我正在用PHP做一个页面,如果有任何新的记录被输入,它将用新的记录计数通知用户屏幕。以下是代码我做了相同的,但它不能正常工作。你能告诉我我做错了什么吗?
alert.php
<?php
require("config.php");
$result = mysql_query("SELECT * FROM marketing_tend_corr");
$res = mysql_num_rows($result);
echo $res;
?>
index.php
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<?php
define('BASEPATH', true);
require("config.php");
?>
<script>
var count_cases = -1;
setInterval(function(){
$.ajax({
type : "POST",
url : "alert.php",
success : function(response){
if (count_cases != -1 && count_cases != response) echo $count_cases);
count_cases = response;
}
});
},1000);
</script>
下面这行代码在Javascript中是不能工作的:
if (count_cases != -1 && count_cases != response) echo $count_cases);
这行代码包含php代码(echo $count_cases),这是服务器端代码。
我已经改变了代码一点,并通过返回一个随机值来替换记录的数量。
//alert.php<?php
echo rand(1, 1000000);
//index . php
<!DOCTYPE html>
<html>
<head>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script type="text/javascript">
setInterval(function(){
$.ajax({
type : "POST",
url : "alert.php",
success : function(response){
$("body").html(response);
}
});
},1000);
</script>
</head>
<body>
</body>
</html>
您可以在浏览器中检查index.php文件以查看返回的随机数。在你的例子中,这个随机数应该成为你的'mysql_num_rows'函数的结果。