从包含的.php文件自动刷新表

时间:2015-09-21 08:56:14

标签: php jquery html mysql ajax

我一直在尝试刷新表而不刷新页面。 我知道这可以用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会更好 我已经尝试了thisthisthis,但这对我没用。那些是html元素,而不是PHP变量。 有什么建议?建议,提示?
提前谢谢!

1 个答案:

答案 0 :(得分:0)

据我了解你的问题,我相信你对ajax的运作方式一无所知。也许这可能对你有帮助。

在伪代码中,它看起来像这样:

whenajaxrequestwassuccessfull (var tabledata = getDataFromServerViaAjax('http://URL of The PHP File which echos a json formated data string')) {

  var dataobject = convertjsontoobject(tabledata);

  loop over the table {
    tablerow->tablefield->setData(dataobject->somedetail)

  }

}