sql >> Databasteknik >  >> RDS >> Mysql

uppdatera databas med kryssruta

Prova detta:

AJAX

$(document).ready(function() {
    $(".onoffswitch-checkbox").click(function() {
        var id = this.id;  //changed here also, just because jQuery is not needed here
        var state = this.checked ? 1 : 0;
        $("#state_span").load("module_update.php?id="+id+"&state="+state); 
    }
}

Ändrade 3 saker:

  • har lagt till en punkt i $("onoffswitch-checkbox") så det är nu $(".onoffswitch-checkbox")
  • har lagt till id= efter module_update.php? och före id värde.
  • eftersom du behöver state Jag lade också till det med en & för att separera värdena för $_GET i php för att skilja dem åt

PHP

Jag vet inte vad du menar med $_GET['onoffswitch-checkbox'] i php, kanske ett misstag? Mitt förslag behöver det inte i alla fall, inte heller din mysql-fråga.

Eftersom du bara kommer att klicka en i taget ser jag inget behov av foreach loop i php, så du kan göra så här:

$id = $_GET['id'];
$state= $_GET['state'];
// $_GET['onoffswitch-checkbox'] ?? I don't think you need this...
// $id = my database row id
// $state = on/off
$query = mysql_query("UPDATE records SET id='$id' WHERE state='$state'", $conn) or die (mysql_error($conn));
$id++;



  1. Hur lagrar jag .txt-filer MySQL-databas?

  2. Det finns problem med att lägga till ett nytt ID (automatisk ökning) efter tabellen

  3. Startar om transaktionen i MySQL efter dödläge

  4. Returnera kolumninformation från en länkad server i SQL Server (T-SQL-exempel)