我的网络提供商是 Strato。我想每 10 秒进行一次 mysql select 查询而不重新加载页面:
Strato 无法使用 Websocket。对我来说,替代方案是 ajax 轮询。我试过这个:
$.ajax({
type: "POST",
url: "ajax/mysqlQuery.php",
data: 'userID=10'
}).done(function(result) {
if(result) {
// DO SOMETHING
}
})
mysql查询.php
<?php
$data= null;
include("../inc/config.php");
while(!$data) {
sleep(10);
$statement = $mysqli->prepare("SELECT * FROM `table` WHERE userID = ?");
$statement->bind_param("s", $_POST["userID"]);
$statement->execute();
$result = $statement->get_result();
while($row = $result->fetch_object()) {
$data[] = array("ID" => $row->ID);
}
}
echo json_encode($data);
?>
这很好用。但:
Strato 的 php max_execution_time 为 120 秒。我的脚本在 120 秒内运行良好 - 然后就会停止。
我该如何解决这个问题?
www说