使用Mysqli、PHP和jQuery实现ajax功能


Implementing ajax functionality using Mysqli And PHP and jQuery

如何使用ajax php和mysqli从数据库中读取数据不使用任何按钮?当我向表中添加一行时,我希望信息显示在页面上,而无需加载/刷新页面或单击按钮。我能做到吗?

这些信息将像下面的代码一样出现

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/>";
  }?>

一个简单的例子,以免假设您要从页面my_data.php 将数据加载到容器div标记<div id="container"></div>

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

理论上不可能捕捉服务器端发生的事件。

在实践中,它是通过向服务器发送请求并获得响应来完成的。

您所需要的只是定期使用ajax发送一些请求。若数据库中有新信息,ajax会将其返回给客户端。然后你可以处理它。

由于您缺乏经验,我建议您先学习w3schools Ajax PHP教程。。。在那里,您将了解如何实现ajax功能,还将了解ajax可以做什么,不能做什么。。。