Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

atualizar banco de dados com caixa de seleção


Tente isto:

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

Mudou 3 coisas:
  • adicionou um ponto em $("onoffswitch-checkbox") então agora é $(".onoffswitch-checkbox")
  • adicionado id= após module_update.php? e antes de id valor.
  • já que você precisa de state também adicionei isso também com um & para separar os valores para $_GET em php para separá-los

PHP

Não sei o que você quer dizer com $_GET['onoffswitch-checkbox'] no php, talvez um erro? Minha sugestão não precisa de qualquer maneira, nem sua consulta mysql.

Como você só clicará um de cada vez, não vejo necessidade do foreach loop em php, então você poderia fazer isso:
$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++;