2014-10-01 4 views
0

Я создал код PHP для создания этого page. Я успешно получаю все элементы из столбца в раскрывающемся списке HTML (это динамический список). Я хочу написать какой-то код, чтобы пользователь, выбрав элемент из списка и нажав submit, перейдет на новую страницу, содержит соответствующую информацию. Я понятия не имею, какой код будет включен. Пожалуйста, помогите. Благодаря!Запуск другого запроса на основе динамического выпадающего списка HTML

Например, если пользователь выбирает 50A-1, он заполняет таблицу всеми позициями, расположенными на 50A-1.

Две части кода, которые я написал, на первой странице дает вам раскрывающийся список и кнопку отправки. Вторая - это страница результатов, но пока показывается только весь инвентарь, у нее нет возможности подключиться к выпадающему списку.

<html> 
    <head> 
     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> 
     <title>Inventory</title> 
    </head> 
    <body> 
     <div> 
      <a>SQL Connection test</a> 
      <form action="connect.php" method="POST"> 
       <div class="center"> 
        <input type="submit" value="Connect to MySQL" /> 
       </div> 
      </form> 
     </div> 
     <div> 
      <section> 
       <article> 
        <p> 
         <select name="dropdown"> 
          <?php query() ?> 
         </select> 
          <?php close() ?> 
        </p> 
       </article> 
      </section> 
      <div> 
       <input type="submit" value="Submit" /> 
      </div> 
     </div> 
    </body> 
</html> 

Вторая страница

<?php 
    include_once 'db.inc.php'; 
    // connect 
    function connect() { 
     // Connect to the MySQL server 
     mysql_connect(DB_HOST,DB_USER,DB_PASS) or die ('Could not connect to server!' . mysql_error()); 
     mysql_select_db(DB_NAME); 
    } 
    // close 
    function close() { 
     mysql_close(); 
    } 
    // query 
    function query() { 
     $myData = mysql_query("SELECT DISTINCT * FROM sheet0_100 GROUP BY location"); 
     while($record = mysql_fetch_array($myData)) { 
      echo '<option value="' . $record['location'] . '">' . $record['location'] . '</option>'; 
     } 
    } 
?> 
+0

Что вы попробовали? Попробуйте написать код, затем вернитесь и спросите, как только у вас возникнет конкретный вопрос. –

+0

@LorenzMeyer, я знаю, как написать код для страницы, содержит результат после отправки. Но я понятия не имею, как написать какой-либо код, чтобы выпадающий список имел какое-то отношение к SQL. –

+0

Вы хотите отслеживать событие изменения выпадающего списка с помощью javascript/jquery? –

ответ

1

Это цель HTML-форм :)

Вам нужно создать форму для инкапсулирования, которые выбирают:

<form action="process.php" method="get"> 
    <select name="inventory_id"> 
     <!-- Here all options --> 
    </select> 
    <button type="submit">See items</button> 
</form> 

Тогда в process.php вы необходимо получить выбранный элемент и запросить базу данных, например (я предполагаю, что вы используете PDO):

<?php 
    $inventory_id = $_GET['inventory_id'] // The name attribute of the select 
    // Then you prepare the query 
    $query = "SELECT * FROM sheet0_100 WHERE id = :inventory_id"; 
    // Execute the query and show the data... 
+0

Вот как я написал эти варианты.

+0

бы путь я получаю варианты работы с примером кода здесь? –

+0

@ShuruiLiu Yep, it would;) –

0

использование Sessions

пример:

на вашей первой странице

session_start(); 
$_SESSION['your-dropdown-list-value'] = 'Root'; 

на новой странице

//error_reporting(E_ALL); 
session_start(); 
if(isset($_SESSION['your-dropdown-list-value'])) { 
    echo "Your dropdown selection " . $_SESSION['your-dropdown-list-value']; 
} 
Смежные вопросы