我一直试图让表刷新而不刷新页面 . 我知道这可以用AJAX完成,但我似乎无法让它工作 .
这是我的情况:
我有一个main.php页面,它有一个include(table.php) . 这包括一个表id:tablevisit . 该表是动态生成的:它遍历数据库中的每一行 . 这是table.php
echo "<div id='tableContainer'>";
$con = new mysqli("localhost","sample","samplepass","sample");
$sql = "SELECT * FROM sampletable";
$i = 0;
$dyn_table = '<table border="1" cellpadding="10" class="visitorlist" id="tablevisit">';
$query = $con->query($sql);
while($row = $query->fetch_assoc()){
$id = $row['ID'];
$name = $row['address'];
$date = $row['date'];
$time = $row['time'];
$url = $row['visit_url'];
$urlstring = $row['visit_url'];
if($i % 3 == 0){
$dyn_table .= '<tr><td>'.$name.'</td>';
$dyn_table .= '<td>'.$date.'</td>';
$dyn_table .= '<td>'.$time.'</td>';
$dyn_table .= '<td class="tdshort"><a href='.$url.' target = "_blank" class=" tdoverflow">' . $_SESSION['cuttedurl'] . '</a></td>';
$dyn_table .= '<td><button type= "button" name = "' . $id . '" class="dynamixbutton navbar-button btn-danger btn" post_id="' . $id . '" type="submit" >CHAT</button></td>';
$dyn_table .= '<td>' . $id . '</td>';
}
else {
$dyn_table .= '<tr><td>'.$name.'</td>';
$dyn_table .= '<td>'.$date.'</td>';
$dyn_table .= '<td>'.$time.'</td>';
$dyn_table .= '<td><a href='.$url.' target = "_blank" class=" tdoverflow">' . $_SESSION['cuttedurl'] . '</a></td>';
$dyn_table .= '<td><button type= "button" name = "' . $id . '" class="dynamixbutton navbar-button btn-danger btn" post_id="' . $id . '" type="submit">CHAT</button></td>';
$dyn_table .= '<td>' . $id . '</td>';
}
$i++;
}
$dyn_table .='</tr></table>';
echo "</div>";
在main.php上调用 echo $dyn_table;
. 现在,需要每隔x秒调用$ dyn_table . 怎么做到这一点?我试过刷新表,但我认为每隔x秒调用$ dyn_table会更好 .
我已经尝试了this,this和this但它对我没用 . 那些是html元素,而不是PHP变量 . 有什么建议?建议,提示?
提前致谢!
1 回答
据我了解你的问题,我相信你对ajax的运作方式一无所知 . 也许这可能对你有帮助 .
在伪代码中它看起来像这样: