我想知道如何<div>
使用AJAX
正在显示的内容是从MySQL
database
. 棘手的部分是我希望将<div>
每个结果显示 30 秒,然后重新加载以显示下一个结果。
这是media table
:
_______________________________________________
| FIELD 1 | FIELD 2 | FIELD 3 | FIELD 4 |
-----------------------------------------------
| ID | TVOne | TVTwo | Active |
-----------------------------------------------
| 15 | no | no | no |
-----------------------------------------------
| 29 | yes | no | yes |
-----------------------------------------------
| 53 | no | no | no |
-----------------------------------------------
| 71 | yes | yes | yes |
-----------------------------------------------
在<div>
位于 TVOne 的页面中,我希望它加载记录 29 和 71。在<div>
位于 TVTwo 的页面中,我希望它只加载记录 71。这table
是由用户在后端修改的,所以结果总是与众不同。
我正在阅读这个问题,我相信javascript
选择器.eq()
可能是拼图的一部分,但我不确定如何将它们放在一起。
所在的页面<div>
称为index4.php
。前一页 ( index3.php
) 执行查询以查看是否有任何记录设置为活动,如果是,则设置num_rows
为$count
并转到index4.php?count=$count
,如果不是,则返回显示序列的开头index.php
。
这是index3.php
重定向功能:
<?php
$result = $mysqli->query("SELECT * FROM media WHERE Active = 1 AND TVTwo = 1");
$count = $result->num_rows;
if($count > 0){$media = "index4.php?count=$count";}
else{$media = "index.php";}
?>
<script>
refresh=window.setTimeout(function(){location.href="<?php echo $media;?>"},15000);
</script>
这是我AJAX
加载的代码<div>
:
<script>
function MediaQuery(qty)
{
if (qty=="")
{
document.getElementById("Media").innerHTML="";
return;
}
if (window.XMLHttpRequest)
{// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp=new XMLHttpRequest();
}
else
{// code for IE6, IE5
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
document.getElementById("Media").innerHTML=xmlhttp.responseText;
}
}
xmlhttp.open("GET","../process/QueryMedia.php?count="+qty,true);
xmlhttp.send();
}
</script>
这是QueryMedia.php:
<?php
$count = $_GET["count"];
$sql = ("SELECT * FROM media WHERE Active = 1 AND TVTwo = 1 LIMIT $count");
if(!$result_sql = $mysqli->query($sql))
{
echo QueryCheck("getting the media records ","from the media",$mysqli);
}
// fetch it here
?>