标签:jquery php javascript mysql
终极目标:我想将我保存在MySQL数据库中的数据放入JavaScript中的数组数组中,因此可以在客户端进行操作.
到目前为止,我已经能够使用以下代码从我的数据库中提取数据:
<?php
...
$num=1;
$q = "SELECT blah1, blah2, blah3 WHERE blah4=$num";
$sth = mysqli_query ($database, $q);
$rows = array();
while($r = mysqli_fetch_assoc($sth)) {
$rows[] = $r;
}
print json_encode($rows);
?>
(来自:JSON encode MySQL results)
这是我被困的地方,因为我无法将这些数据导入JavaScript.
我能找到的一个解决方案是Parsing a Separate PHP Array in Javascript:
<script>
var jsonarray = <?php echo json_encode($array); ?>;
// now you can use jsonarray in your javascript
</script>
但是这个实现的问题在于它会将我查询的所有数据库内容吐出到页面的源代码上.如果我必须这样做,我不妨跳过数据库并将所有内容保存在javascript中.
我认为必须有一种方法可以使用jQuery / AJAX将$num的值传递给PHP脚本,获取此数据并将其放入JavaScript数组中,而无需将所有数据输出到页面.
任何援助将不胜感激.
谢谢!
解决方法:
您发布的此解决方案:
<script>
var jsonarray = <?php echo json_encode($array); ?>;
// now you can use jsonarray in your javascript
</script>
实际上是一个非常好的方法.使用AJAX的速度非常慢(因为网络延迟).
除非你出于某种原因确实需要AJAX,否则你应该避免使用它.它会为页面添加明显的分秒加载时间,通常根本没有任何好处.
最重要的是,在构建页面时,您希望尝试减少浏览器和服务器之间的单个网络请求数.请求越少,页面越快.对于javascript和ajax尤其如此,因为它们是不可预测的,并且浏览器发现很难优化页面的任何部分.
对于完全相同的最终结果,我们谈论的是四分之一秒,而百万分之一秒.
标签:jquery,php,javascript,mysql 来源: https://codeday.me/bug/20190721/1494725.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。