Mysql
 sql >> база данни >  >> RDS >> Mysql

mysql база данни прави падащо меню с помощта на данни, които вече са въведени в html/php

Нещо подобно?

<select name="pulldown1">
    <option value="default">Choose an option</option>
    <?php
    include("connect.php"); /*file where you have stored your DB conn. settings*/
    $result = mysql_query('SELECT id, lastname, firstname FROM spusername ORDER BY firstname ASC') or die (mysql_error()); 

    while ($row = mysql_fetch_array($result)) {
    echo '<option value="' . htmlentities($row['id'], ENT_QUOTES) . ' ' . htmlentities($row['lastname'], ENT_QUOTES) . ' ' . htmlentities($row['firstname'], ENT_QUOTES) . '">' . htmlentities($row['lastname'], ENT_QUOTES) . ', ' . htmlentities($row['firstname'], ENT_QUOTES) . '</option>';
    }
    ?>
</select>

<select name="pulldown2">
    <option value="default">Choose and option</option>
    <?php

    $result = mysql_query('SELECT traingtype FROM trainingtable ORDER BY trainingname ASC') or die (mysql_error()); 

    while ($row = mysql_fetch_array($result)) {
        echo '<option value="' . $row['trainingtype'] . '">' . $row['trainingtype'] . '" "' . $row['lastname'] . '</option>';
    }
    ?>
</select>

Това ще доведе до две падащи менюта, където първото падащо меню изброява фамилията и собственото име на потребителите, разделени със запетая+интервал, а второто ще изброява различните видове обучение. Подаденият идентификатор се изпраща само чрез променливата, но не се показва на потребителя.

Когато изтегляте стойностите от променливата в pulldown1, просто използвайте explode:

$userdetails = $_POST['pulldown1'];
$values = explode(" " $userdetails);
$ID = $values[0];
$lastname = $values[1];
$firstname = $values[2];

Не съм тествал кода, така че може да се наложи настройване и, разбира се, трябва да промените имената на променливите, съответстващи на вашите действителни имена на редове в db.

Редактиране:Във вашия код трябва да използвате $row, а не $row2.

Второ, вместо това:

<option value='{$id}'>{$lastname},{$firstname}</option>

използвайте това:

<option value="' . $row['id'] . '">' . $row['lastname'] . ', ' . $row['firstname'] . '</option>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да се свържете с множество бази данни в една PHP страница?

  2. Кой е най-добрият начин за съхраняване на html код в mysql?

  3. Записване на Python Pickled обекти в MySQL db

  4. Преместване на възел в дървото на вложените набори

  5. PDO, $_GET и ИЗБОР от MySQL база данни