2016-07-22 2 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 с Ajax – Deep

+0

Я не уверен, что вы имеете в виду. Вы хотите, чтобы строки добавлялись автоматически, когда пользователь добавляет строку? если пользователь добавляет строку в браузере, зачем вам запрашивать БД для большего количества строк? У вас уже есть новая строка в браузере. – BeetleJuice

+0

как я могу это сделать, что у меня нет опыта с этим, если вы можете мне помочь. Plz – user3018000

ответ

1

Простой пример, чтобы предположить, что вы, что загрузить вам данные в контейнере сОн теге <div id="container"></div> со страницей my_data. php

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

, пожалуйста, на странице my_data.php, как правильно поместить мой PHP-код. – user3018000

+0

I вы получите то, что вы говорите ... Только вам нужно указать URL-адрес, к которому вы хотите получить доступ. –

+0

спасибо, что это работа :) – user3018000

0

Теоретически невозможно поймать событие, происходящее на стороне сервера.

На практике это делается путем отправки запроса на сервер и получения ответа.

Все что вам нужно, просто отправьте запрос с помощью ajax периодически. Если в базе данных есть новая информация, ajax вернет ее клиенту. Затем вы можете обработать его.

0

Как вы неопытны, я бы посоветовал вам сначала пройти курс обучения по учебному курсу по A3, а затем вы поймете, как реализовать функцию ajax для реализации, а также вы поймете, что может сделать Ajax и что Ajax не может ...