sql >> Databasteknik >  >> RDS >> Mysql

Hur man uppdaterar en MySQL-kolumn baserat på en kryssruteinmatning

Några problem som jag hittade i dina frågor

Detta

SELECT * FROM announce WHERE id == $ids

Borde vara

SELECT * FROM announce WHERE id = '$ids'

Och det här

UPDATE announce SET approv = 'approved'WHERE id == $idan

Borde vara

UPDATE announce SET approv = 'approved' WHERE id = '$idan'

Din kryssruta har inte heller något värdeattribut

<input type="checkbox" name="approv[]" value="<echo your table row id here>" />

Använd sedan

foreach($_POST['approv'] as $apprValue)
{
    mysql_query(UPDATE announce SET approv = 'approved' WHERE id = '$apprValue');
}

På en helt sidoanteckning, använd inte mysql_* funktioner längre. De kommer snart att avskaffas. Bättre att välja mysqli eller PDO



  1. När du använder GETDATE() på många ställen, är det bättre att använda en variabel?

  2. GoLang - Fortsätt med ISO-8859-1 teckenuppsättning

  3. mySQL Table ERROR 1064

  4. Hur man använder GROUP_CONCAT i en CONCAT i MySQL