2016-07-22 9 views
1

ボタンを使用せずにajax phpとmysqliを使用してデータベース からデータを読み取るにはどうすればよいですか? テーブルに行を追加すると、ページをロード/リフレッシュせずに、またはボタンをクリックすることなく、ページに情報を表示したいと考えています。それをしてもいいですか?あなたはどのようなページmy_dataからあなたのコンテナのdivタグ<div id="container"></div>でデータをロードすることを前提としていないようにMysqliとPHPとjQueryを使用したajax機能の実装

が、この情報は、

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

私はあなたが何を意味するか分かりません。ユーザーが行を追加すると自動的に行が追加されますか?ユーザーがブラウザに行を追加すると、なぜDBをより多くの行に対してクエリする必要がありますか?すでにブラウザに新しい行があります。 – BeetleJuice

+0

は、私はあなたがテーブルをレンダリングするAJAX呼び出しを作るために持っているよりもページを更新せずにそれをしたい場合は、プラザ – user3018000

答えて

1

簡単な例以下のコードのように表示されます。 PHP

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

をしてくださいリフレッシュする必要が直接表示されていない無あなたはあなたが言うことを得ることができます...アクセスするものを指定する必要があります。 – user3018000

+0

に私を仕事に私のPHPコードを置く方法ページmy_data.phpでページ –

+0

ありがとうございます:) – user3018000

0

理論上、サーバー側で発生するイベントをキャッチすることはできません。

実際には、サーバーに要求を送信し、応答を受け取ることによって行われます。

必要なのは、定期的にajaxを使用してリクエストを送信するだけです。データベースに新しい情報がある場合、ajaxはそれをクライアントに返します。その後、それを処理することができます。

0

初心者でも、まずはw3schools Ajax PHPチュートリアルをお試しください...ここでは、Ajaxの機能を実装する方法を理解しています。また、Ajaxで何ができるのか、またAjaxではできないことを理解します...

関連する問題