“PHP SQL结果作为整体”;“对象”;
我正在从事这个项目,它将有有限的PHP进程,可能会有很多人使用这个页面。因此,我正在尝试优化它,以便在客户端处理最安全的事情“PHP SQL结果作为整体”;“对象”;,php,Php,我正在从事这个项目,它将有有限的PHP进程,可能会有很多人使用这个页面。因此,我正在尝试优化它,以便在客户端处理最安全的事情 $result = mysqli_query($db, "SELECT * FROM userdata"); /*return $result; */ while ($row = mysql_fetch_array($result)) { //do sth, e.g. get row to array } /*re
$result = mysqli_query($db, "SELECT * FROM userdata");
/*return $result; */
while ($row = mysql_fetch_array($result)) {
//do sth, e.g. get row to array
}
/*return $array;*/
在这种情况下,我的问题很简单。
循环每一行需要时间,并且会在相当长的一段时间内阻塞php进程。
所以,这里有一些解决方案,您只需发送SQL请求,从DB server您将得到“一些数据束”形式的响应,我将能够直接传递到jquery,在那里我可以使用客户端资源而不是服务器资源处理/排序/编辑/查看结果
(到目前为止,发出sql请求并将$result
传递给jquery变量似乎没有返回任何内容,jquery变量为空)
提前感谢首先,看起来您正在将mysql与mysqli混合使用 mysqli方法:
mysqli_query($db, "SELECT * FROM userdata");
mysql方法:
mysql_fetch_array($result)
你不应该这样做。mysql方法已被弃用,并且两种方法都是完全不同的api,它们并不意味着要一起工作,即使它工作,这样做显然是错误的
至于您的问题,为了将获取的db数据结果传递给jQuery或Javascript进行客户端处理,您可以将结果数组转换为JSON字符串
这样做:
$row = mysqli_fetch_array($result);
echo json_encode($row);
然后使用jquery对php脚本进行ajax调用。并解析json数据。我想您要求的是这个函数:
将所有行检索到单个嵌套关联数组中。然后,您可以使用JSON_encode()对该数组进行编码,以使用客户端javascript进行处理。绝对不是man的可能副本…@Zorak绝对是“yes”man.yep,它似乎在工作,这就是我需要的,谢谢:)