sql >> Database teknologi >  >> RDS >> Mysql

opdater database med afkrydsningsfelt

Prøv dette:

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

Ændrede 3 ting:

  • tilføjede en prik i $("onoffswitch-checkbox") så det er nu $(".onoffswitch-checkbox")
  • tilføjede id= efter module_update.php? og før id værdi.
  • da du har brug for state det tilføjede jeg også med en & for at adskille værdierne for $_GET i php for at adskille dem

PHP

Jeg ved ikke, hvad du mener med $_GET['onoffswitch-checkbox'] i php, måske en fejl? Mit forslag behøver det alligevel ikke, og det gør din mysql-forespørgsel heller ikke.

Da du kun klikker én ad gangen, ser jeg intet behov for foreach loop i php, så du kunne gøre dette:

$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. MySQL View kontroller, om data er NULL

  2. Spring data JPA:Får Ingen aliaser fundet i resultat tuple! fejl ved udførelse af tilpasset forespørgsel

  3. Få grænseværdierne for en opdelt tabel i SQL Server (T-SQL)

  4. Hvorfor er referencer til wp_postmeta så langsomme?