2016-07-22 40 views
1

如何使用AJAX PHP和mysqli的,而无需使用任何按钮,开始读数据库 数据Ajax功能? 当我向表中添加一行时,我希望在页面上显示信息而不加载/刷新页面或单击按钮。我可以这样做吗?实现使用的mysqli和PHP和jQuery

而这个信息将出现如下图所示

PHP代码

<?php 
if (isset($_GET['id'])) { 
    $id = intval($_GET['id']); 
    $date = date("l jS \of F Y"); 
    $query = mysqli_query($conn, "select * from tbl_dailyprogress where db_activityid='$id' and db_d='1'")or die(mysqli_error($conn)); 
    $count = mysqli_num_rows($query); 
    if ($count != 0) { 
    echo"<table class='ol-md-12 table-bordered table-striped table-condensed cf table-bordered' id='alternatecolor'>"; 
     echo"<thead class='cf'>"; 
     echo"<tr>"; 
     echo" <th style='background:#f7ac01;font-size:16px;vertical-align: middle;text-align:center'rowspan='2' >Date</th> 
       <th style='background:#f7ac01;font-size:16px;vertical-align: middle;text-align:center'rowspan='2' >Notes</th>   
       <th style='background:#f7ac01;font-size:16px;vertical-align: middle;text-align:center'rowspan='2' >Progress %</th> 
      "; 
     echo"</tr></thead><tbody>"; 
     while ($row = mysqli_fetch_array($query)) { 
     $idp = $row['db_id']; 
     $date = $row['db_date']; 
     $note = $row['db_note']; 
     $progress = $row['db_progress']; 
     echo"<tr>"; 
     echo"<td data-title='Date'>"; 
     echo $date; 
     echo"</td>"; 
     echo"<td data-title='Note'>"; 
     echo $note; 
     echo"</td>"; 
     echo"<td data-title='Progress %'>"; 
     echo' 
     <div class="progress"> 
      <div class="progress-bar" role="progressbar" aria-valuenow="70" aria-valuemin="0" aria-valuemax="100" style="width:' . $progress . '%"> 
      ' . $progress . '% 
      </div> 
     </div>'; 
     echo"</td>"; 
     } 
     echo"</tr></tbody>"; 
    echo"</table>"; 
    echo"<br/>"; 
    }?> 
+0

使用jQuery阿贾克斯 – Deep

+0

我不知道你的意思。你想要在用户添加行时自动添加行?如果用户在浏览器中添加一行,为什么需要查询数据库获取更多行?您已在浏览器中拥有新行。 – BeetleJuice

+0

我该怎么办,我没有与经验,如果你能帮助我PLZ – user3018000

回答

1

简单的例子代码,以免假设你怎么加载您从页面my_data在容器div标签<div id="container"></div>数据。 PHP

$(document).ready(function(){ 
    $("#container").load("my_data.php"); 
}); 
+0

的页面,请在页面my_data.php如何把我的PHP代码工作正确 – user3018000

+0

我dint让你知道你说什么......只有你需要指定你要访问的URL。 –

+0

谢谢你的工作:) – user3018000

0

在理论上是不可能赶上在服务器端的事件发生。

在实践中,通过发送请求到服务器并得到响应完成。

所有你需要的仅仅是周期性发送用ajax有一定的要求。如果数据库中有新的信息,Ajax会将其返回给客户端。然后你可以处理它。

0

当你没有经验,我建议你请通过W3Schools的阿贾克斯PHP教程第一......在那里,您将了解如何实现AJAX功能,还,你就会明白什么阿贾克斯可以做,什么阿贾克斯不能...