Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Mengisi kolom input pilih dengan nilai dari mysql

Dapatkan opsi hanya sekali (tidak perlu mengulangi ini untuk setiap orang):

$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));

Lalu, lewati orang tersebut

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++;   
}

Membangun ini menjadi satu SELECT-query adalah kompleks yang tidak perlu (walaupun mungkin, tetapi memberi Anda kode yang tidak dapat dibaca).

Oh, dan lihat htmlspecialchars (), jika nama mengandung "-karakter, HTML Anda akan kacau




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Menambahkan kolom SQL baru dengan nilai default

  2. Cadangkan pengguna MySQL

  3. Laravel:cara mendapatkan rata-rata pada hubungan hasMany bersarang (hasManyThrough)

  4. Koneksi Laravel MySql DB dengan SSH

  5. Peringatan:mysql_connect():Tidak dapat terhubung ke server MySQL lokal