Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何一次循环并显示1 DB记录?_Javascript_Php_Jquery_Json - Fatal编程技术网

Javascript 如何一次循环并显示1 DB记录?

Javascript 如何一次循环并显示1 DB记录?,javascript,php,jquery,json,Javascript,Php,Jquery,Json,我正在制作一个简单的物品挑选系统,在这个系统中,用户将使用一个按钮来显示一个物品,然后一旦被挑选,将被按下并在下一行显示下一个物品 当前,当按下按钮时,将显示第一个项目,然后再次按下将显示第一个项目以及第二个项目,然后是第三个项目,依此类推 例如: 第一次印刷:第1项 第二次印刷:项目1、项目2 我需要弄清楚如何在表格中一次只显示一个项目。任何帮助都将不胜感激,谢谢。这是我的按钮: <script> var offset = 0; $(document).ready(functi

我正在制作一个简单的物品挑选系统,在这个系统中,用户将使用一个按钮来显示一个物品,然后一旦被挑选,将被按下并在下一行显示下一个物品

当前,当按下按钮时,将显示第一个项目,然后再次按下将显示第一个项目以及第二个项目,然后是第三个项目,依此类推

例如:

第一次印刷:第1项

第二次印刷:项目1、项目2

我需要弄清楚如何在表格中一次只显示一个项目。任何帮助都将不胜感激,谢谢。这是我的按钮:

<script>
var offset = 0;

 $(document).ready(function () {
$('#button1').click(function (e) {
    $("#div1").empty();
          // pass offset value with GET request
    $.getJSON("getItem.php?offset=" + offset,     function(result){

      offset++; // increment the value after sucessful AJAX call
      $.each(result, function(i, field){
        $("#div1").empty();

    $("#div1").append(JSON.stringify(result));     
      });
    });
  });
});
</script>

问题是查询的限制部分。第一部分放“1”实际上是偏移量,第二部分放$offset是计数值

可能应该是这样的:

$sql="SELECT * FROM items LIMIT $offset, 1";

您可以第一次从DB中选择所有项目,并将它们存储到一个数组中。每次用户单击按钮时,都可以使用偏移量从该数组中选择项

这样可以避免对每个对象/单击发出新的http请求。
除非你有无限数量的对象和/或对象的大小非常大。

在任何其他人提到它之前,只需记录一下:当然,你应该考虑SQL注入基础知识,并且将类型偏移为$1。
$sql="SELECT * FROM items LIMIT $offset, 1";