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

Попълване на полето за въвеждане на избор със стойност от mysql

Получавайте опции само веднъж (няма нужда да повтаряте това за всеки човек):

$sqlStatuses = 'SHOW COLUMNS FROM '.$table_name2.' WHERE field="'.$column_name2.'"';
$rowStatuses = $db_con->query($sql1)->fetch(PDO::FETCH_ASSOC);
$personStatuses = explode("','",substr($rowStatuses['Type'],6,-2));

След това преминете през хората

foreach ($results2 as $value2) { 
    // Your code
    echo "<tr>";
    echo "<td>Name #".$s."<input type=\"hidden\" name=\"person_id_".$s."\" value='". $person_id = $value2['person_id']."' readonly=\"readonly\"/><input id=\"person_fname_".$s."\" name=\"person_fname_".$s."\" placeholder=\"Person #".$s." First Name\" type=\"text\" value='" . $value2['first_name'] ."'/></td>";

    // Added
    echo '<td><select name="person_status_'.$s.'">';
    foreach($personStatuses as $option) {
        echo '<option value="'.htmlspecialchars($option).'" ';
        if ($value2['person_status'] == $option) {
            echo 'selected="selected"';
        }
        echo '>' . htmlspecialchars($option) . '</option>';
    }
    echo '</select></td>';

    // Your code again
    echo "</tr>";
    $s++;   
}

Изграждането на това в една SELECT-заявка е ненужно сложно (макар и възможно, но ви дава нечетлив код).

О, и вижте htmlspecialchars (), ако името съдържа "-знак", вашият HTML се прецаква




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL пълнотекстово търсене в множество колони:резултат объркване

  2. Получаване на новия идентификатор на първичен ключ на запис от MySQL заявка за вмъкване?

  3. Как да мигрираме MySQL от Amazon EC2 към вашия On-Prem център за данни без престой

  4. Код на изключение от безизходица за PHP, MySQL PDOException?

  5. секвалиране на таблица без колона 'id'