Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Lựa chọn hộp kiểm Cập nhật PHP / MySQL vào cơ sở dữ liệu

Bạn không có gì ở đây để đặt các giá trị bằng 0. Các hộp không được chọn sẽ đơn giản là không có trong mảng $ _POST.

Bạn sẽ cần tạo một danh sách riêng gồm tên của tất cả các hộp kiểm và chuyển qua các hộp kiểm đó, so sánh chúng với mảng $ _POST.

Chỉnh sửa: Sẽ không viết bất kỳ mã nào, nhưng:

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

Lưu ý rằng chúng tôi không thực sự cần đến chuỗi mysql_real_escape_string vì chúng tôi biết rằng tất cả các giá trị id đều an toàn, nhưng đó là cách tốt để đề phòng trường hợp ai đó đến sau và bất cẩn thay đổi mảng $ allids.

Chỉnh sửa lại: Giả sử chúng ta không biết id cần tìm.

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. Làm cách nào để xóa khỏi vùng chọn trong MySQL?

  2. Sử dụng nhóm theo hai trường và đếm trong SQL

  3. Xóa các hàng mysql trùng lặp không có khóa chính

  4. MySQL Trigger chèn vào một bảng khác

  5. Làm cách nào để loại bỏ các mục trùng lặp trong MySQL với tập dữ liệu 20 triệu hàng?