2013-11-23 3 views
0

Я пытаюсь создать раскрывающийся список отделов и основываться на этом значении, которое должен показать суб-отдел. Я пытаюсь получить все значения из базы данных. Я не могу передавать значения из одной таблицы в другую, чтобы суб-отдел показывал значения в соответствии с выбранным полем отдела. Я думаю, может быть, я передаю неправильное значение в скрипте java и в атрибуте onchange. каков должен быть правильный способ передачи значения из одной таблицы в другую? извините за любую ошибку форматирования.зависимые выпадающие значения списка из базы данных

function department() 
    { 
     global $con; 
     $sql_dept=mysqli_query($con,"SELECT * FROM jsrao_dept"); 
     echo"<select id='test' name='dept_id' onchange='subdept().value'>"; 
     while($row_dept = mysqli_fetch_array($sql_dept)) 
     { 
      ?><option value="<?php $row_dept['Id'] ?>"><?php 
      echo $row_dept["dept_name"]; ?> 
     </option><?php 
     } 
     echo"</select>"; 
    } 
    function subdepartment($id) 
    { 
     global $con; 
     global $id_num; 
     $sql_sdept=mysqli_query($con,"SELECT js.sub_name FROM jsrao_sdept AS js INNER JOIN jsrao_dept AS jd ON jd.Id=js.dept_id where js.dept_id=$id"); 
     echo"<select name='sdept_id'>"; 
     while($row_sdept = mysqli_fetch_array($sql_sdept)) 
     { 
     ?><option value="<?php $row_sdept['Id'] ?>"><?php 
     echo $row_sdept["sub_name"]; 
     echo"</option>"; 
     } 
     echo"</select>"; 
    } 
    <script type="text/javasript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"> 
    function subdept(id) 
    { 
     <?php 
     subdepartment(id); 
     ?> 
    } 
    </script> 
    HTML Code: 
     <tr> 
    <td>Department<sup style="color:red">*</sup>-</td> 
    <td><?php 
      department(); 
    ?></td> 
    </tr> 
    <tr> 
    <td>Sub-department-</td> 
    <td><?php 
     $sql_dept=mysqli_query($con,"SELECT * FROM jsrao_dept"); 
     $sql_1=mysqli_fetch_array($sql_dept); 
     $id=$sql_1['Id'];echo $id; 
     subdepartment($id) 

    ?></td> 
+0

Какой у вас HTML-код? – koljanep

+0

Вы вызываете функцию на стороне сервера непосредственно на стороне клиента, вам нужен вызов ajax. –

+0

@koljanep добавил html-код. его внутри таблицы. btw в html-коде, когда я добавил sql-запрос, он работает, но в некоторой степени. теперь только первое поле видимо для поддерева – Sp0T

ответ

2

PHP-веб-страница генерируется следующим образом:

  • РНР код выполняется на сервере, возможно вставить некоторый текст в HTML или JavaScript.
  • Результирующая страница, лишенная своего PHP, отправляется с сервера клиенту.
  • Клиент отображает страницу.

Поэтому, когда пользователь видит страницу, кода на PHP не остается. Даже если бы это было, это не имело бы никакого значения, потому что клиент не имеет доступа к серверу. Как вы получаете больше данных с сервера? Вам либо нужно загрузить другую страницу, либо использовать AJAX.

+0

спасибо за объяснение. Я думаю, что мне придется изучать аякс. – Sp0T

Смежные вопросы