十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
$con = new mysqli($address,$username,$password,$database);
10年积累的做网站、成都网站设计经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有江阳免费网站建设让你可以放心的选择与我们合作。
if (!$con)
{
die('Could not connect: ' . mysqli_error());
}
$sql="select * from {$table}";
$result = $con - query($sql);
$tables=array();
while($rows = $result - fetch_assoc())
{
$json[]=$rows;
}
echo json_encode($json);
$result-close();
返回数据代码如下:
如果在php里有echo的值的话,可以用AJAX来接收:
有多个输出的话,是不可能指定输出的
需要把想要输出的内容放到一个数组中,然后json_encode一下,在到js里循环,找到自己想要的值
比如:
//需要输出的内容
echo 'aaa'; echo 'bbb';echo ''ccc;
//合成数组
$data = array(‘name1’='aaa',‘name2’= 'bbb',‘name2’= 'ccc');
//json_encode
$data = json_encode($data);
//输出
echo $data;
js:
$.post('aa.php',‘’,function(mes){
var data = eval('(' + msg + ')');
var name1 = data['name1'];
var name2 = data['name2'];
var name3 = data['name3'];
})
json_encode
(PHP 5 = 5.2.0, PECL json = 1.2.0, PHP 7)
json_encode — Returns the JSON representation of a value
网页链接
你如果想让后台以json格式返回数据,那么php就一定要用标准的json格式来输出数据,不要混杂其他无关数据。比如你的“返回的数据:”这几个字就属于多余数据,ajax在接收到返回数据后就会转换失败。所以你的 echo "返回的数据:"; 应该删掉(如果还有其他类似的输出语句也要删掉),确保输出的数据只有 ["jeff-A-01.png","jeff-d-01.png"] 这样的内容。
新建一个页面b.php,ajax请求这个页面 ,b.php用来文件流来读取aa.php 里面的文本,然后b.php返回这个文件流的数据
$(document).ready(function(){
$(":button").click(function(){
$.ajax({
url:'b.php',
type:'get',
data: 'do=testname=必优博客',
success:function(responseText){
alert(responseText);
$("#aa").html(responseText);
}
});
});
});
b.php
$path = "aa.php"
%php
$file_handle = fopen($path, "r");while (!feof($file_handle)) { $line = fgets($file_handle); echo $line;}
fclose($file_handle);
%
这个需要配合js,打开一个html页面,首先js用ajax请求页面,返回第一个页面信息确定处理完毕(ajax有强制同步功能),ajax再访问第二个页面。(或者根据服务器状况,你可以同时提交几个URL,跑几个相同的页面)
参数可以由js产生并传递url,php后台页面根据URL抓页面。然后ajax通过php,在数据库或者是哪里设一个标量,标明检测到哪里。由于前台的html页面执行多少时候都没问题,这样php的内存限制和执行时间限制就解决了。
因为不会浪费大量的资源用一个页面来跑一个瞬间500次的for循环了。(你的500次for循环死了原因可能是获取的数据太多,大过了php限制的内存)
不过印象中curl好像也有强制同步的选项,就是等待一个抓取后再执行下一步。但是这个500次都是用一个页面线程处理,也就是说肯定会远远大于30秒的默认执行时间。