Hãy thử điều này:
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);
}
}
Đã thay đổi 3 điều:
- đã thêm một dấu chấm vào
$("onoffswitch-checkbox")vì vậy bây giờ là$(".onoffswitch-checkbox") - đã thêm
id=saumodule_update.php?và trướcidgiá trị. - vì bạn cần
stateNgoài ra, tôi cũng đã thêm điều đó bằng&để tách các giá trị cho$_GETtrong php để tách chúng ra
PHP
Tôi không biết ý bạn là gì với $_GET['onoffswitch-checkbox'] trong php, có thể là một sai lầm? Đề xuất của tôi dù sao cũng không cần, truy vấn mysql của bạn cũng vậy.
Vì bạn sẽ chỉ nhấp vào từng cái một nên tôi thấy không cần foreach lặp lại trong php, vì vậy bạn có thể làm điều này:
$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++;