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

Pilihan kotak centang Pembaruan PHP/MySQL ke database

Anda tidak memiliki apa pun di sini yang menetapkan nilai ke nol. Kotak yang tidak dicentang akan absen dari larik $_POST.

Anda harus membuat daftar terpisah dari nama semua kotak centang dan menelusurinya, membandingkannya dengan larik $_POST.

Sunting: Tidak akan menulis kode apa pun, tetapi:

$allids = array('id1','id2','id3');

foreach ($allids as $oneid) {
  $val = (int) isset($_POST[$oneid]);  // will be 0 or 1
  mysql_query("UPDATE istable SET showPP = $val WHERE id = ".mysql_real_escape_string($oneid));
}

Perhatikan bahwa kita tidak benar-benar membutuhkan mysql_real_escape_string di sini karena kita tahu bahwa semua nilai id aman, tetapi ini adalah praktik yang baik untuk berjaga-jaga jika seseorang datang kemudian dan dengan sembarangan mengubah array $allids.

Edit lagi: Misalkan kita tidak tahu id apa yang harus dicari.

mysql_query("UPDATE istable SET showPP = 0");
foreach ($_POST as $oneid=>$nothing) {
  mysql_query("UPDATE istable SET showPP = 1 WHERE id = ".mysql_real_escape_string($oneid));
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dialek SQL Tidak Dikonfigurasi (Phpstorm)

  2. virtualenv(python3.4), pip install kesalahan mysqlclient

  3. Bagaimana cara mendapatkan ID dari baris yang terakhir diperbarui di MySQL?

  4. Desain basis data relasional beberapa jenis pengguna

  5. Memasukkan record ke dalam tabel MySQL menggunakan Java