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

Вмъкнете Да или Не в MySQL въз основа на стойността на квадратчето за отметка

Проблемът с квадратчетата за отметка (както отбелязахте) е, че тези без отметка не изпращат никакви данни.

Стандартният трик за заобикаляне на това е...

<input type="hidden" name="field_name" value="0">
<input type="checkbox" name="field_name" value="1">

Когато е поставена отметка в квадратчето, стойността му се изпраща така, както се показва по-късно в документа. Ако не е отметнато, скритата входна стойност се изпраща.

След това можете просто да проверите стойността по име

$field = isset($_POST['field_name']) ? $_POST['field_name'] : false;
$dbFlag = $field ? 'Yes' : 'No';

Във вашия конкретен случай включете page_id във входното име, напр.

<input type="hidden" name="likebutton[416]" value="0">
<input type="checkbox" name="likebutton[416]" value="1">

И в PHP

foreach ($_POST['likebutton'] as $pageId => $likeFlag) {
    $dbFlag = $likeFlag ? 'Yes' : 'No';

    // update DB
}



  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. известие за ново съобщение на живо

  4. Покажете „Няма намерени съвпадения“ или скрийте DIV резултати (AJAX и MySQL)

  5. SQLSTATE[42000]:Синтактична грешка или нарушение на достъпа:1064 Имате грешка във вашия SQL синтаксис — PHP — PDO