Javascript 如何在单击按钮时从数据库中一次检索一行?
我正在开发一个物品挑选系统,需要在一个表中一次点击一个按钮,遍历一个物品。当前,该按钮仅检索并显示表中的第一项。如何更改它,使其在单击按钮时一次遍历每一个?任何帮助都将不胜感激,谢谢 这是我用来检索数据的php文件Javascript 如何在单击按钮时从数据库中一次检索一行?,javascript,php,json,ajax,Javascript,Php,Json,Ajax,我正在开发一个物品挑选系统,需要在一个表中一次点击一个按钮,遍历一个物品。当前,该按钮仅检索并显示表中的第一项。如何更改它,使其在单击按钮时一次遍历每一个?任何帮助都将不胜感激,谢谢 这是我用来检索数据的php文件 mysqli_select_db($con,"items"); $sql="SELECT * FROM items Limit 1 "; $result = mysqli_query($con,$sql); while($row = mysqli_fetch_assoc($re
mysqli_select_db($con,"items");
$sql="SELECT * FROM items Limit 1 ";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_assoc($result))
$rows[] = array_map('utf8_encode', $row);
header('Content-Type: application/json');
echo json_encode($rows);
这是我的按钮
<script>
$(document).ready(function () {
$('#button1').click(function (e) {
$.getJSON("getItem.php", function(result){
$.each(result, function(i, field){
$("#div1").empty();
$("#div1").append(JSON.stringify(result)); //alert(JSON.stringify(data));
});
});
});
});
</script>
$(文档).ready(函数(){
$('#按钮1')。单击(函数(e){
$.getJSON(“getItem.php”,函数(结果){
$.each(结果、函数(i、字段){
$(“#div1”).empty();
$(“#div1”).append(JSON.stringify(result));//alert(JSON.stringify(data));
});
});
});
});
您需要维护一个变量来处理限额查询的偏移量。你可以这样试试
JS代码:
<script>
var offset = 0;
$(document).ready(function () {
$('#button1').click(function (e) {
// pass offset value with GET request
$.getJSON("getItem.php?offset=" + offset, function(result){
offset++; // increament the value after sucessful AJAX call
$.each(result, function(i, field){
$("#div1").empty();
$("#div1").append(JSON.stringify(result)); //alert(JSON.stringify(data));
});
});
});
});
</script>
mysqli_select_db($con,"items");
// Get the offset value
$offset = empty($_GET['offset']) ? 0 : $_GET['offset']
$sql="SELECT * FROM items Limit 1, $offset"; // pass the offset value to LIMIT query
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_assoc($result))
$rows[] = array_map('utf8_encode', $row);
header('Content-Type: application/json');
echo json_encode($rows);
我会在button1中添加一个属性来跟踪计数
<div id="button1" count="1">clickme</div>
在PHP页面中,我必须假设您有某种ID作为键。item_id=1、item_id=2等。将查询更改为:
"SELECT * FROM items WHERE item_id = ".$_GET['count'].";"
感谢您的回复,我尝试了这个,但我的php文件中不断出现错误:xdebug error xe warning:warning:mysqli_fetch_assoc()期望参数1为mysqli_result,给定布尔值。出于某种原因,它不喜欢sql语句中的offset变量,因为当我删除它时,错误会消失,我忘记了放一个,将偏移量与限制分开。我已经更新了答案检查,如果它现在起作用。谢谢,我现在收到一个行变量未定义的错误。我已经设法解决了这个问题,但是每次我尝试用按钮逐个遍历每条记录时,它都会将表中的下一项添加到最后一条记录上
"SELECT * FROM items WHERE item_id = ".$_GET['count'].";"