2016-07-22 7 views
1

Wie kann ich AJAX PHP und MySQL verwenden, um Daten aus meiner Datenbank ohne Verwendung einer Schaltfläche zu lesen? Wenn ich eine Zeile zur Tabelle hinzufüge, möchte ich, dass Informationen auf der Seite angezeigt werden, ohne die Seite zu laden/zu aktualisieren oder auf eine Schaltfläche zu klicken. Kann ich das machen?Implementierung von Ajax-Funktionalität mit Mysqli und PHP und jQuery

Und diese Informationen werden wie der Code unter

PHP-Code

<?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

Verwenden Sie jQuery mit Ajax – Deep

+0

Ich bin mir nicht sicher, was du meinst. Sie möchten, dass Zeilen automatisch hinzugefügt werden, wenn ein Benutzer eine Zeile hinzufügt? Wenn der Benutzer eine Zeile im Browser hinzufügt, warum sollten Sie die DB nach weiteren Zeilen abfragen? Sie haben die neue Zeile bereits im Browser. – BeetleJuice

+0

wie kann ich tun, dass ich keine Erfahrung damit habe, wenn Sie mir helfen können plz – user3018000

Antwort

1

Einfaches Beispiel, erscheinen werden, damit an, dass Sie, was Sie Daten in Tag-Container div <div id="container"></div> ab Seite my_data zu laden. php

+0

bitte in der Seite my_data.php wie ich meinen PHP-Code richtig arbeiten – user3018000

+0

I dint bekommst du was du sagst ... Nur du musst URL angeben, auf die du zugreifen kannst. –

+0

danke es ist Arbeit :) – user3018000

0

In der Theorie ist es nicht möglich, das Ereignis in Server-Seite passiert zu fangen.

In der Praxis wird es durch Senden einer Anfrage an den Server und Erhalten der Antwort durchgeführt.

Alles, was Sie brauchen, ist nur eine Anfrage mit Ajax regelmäßig zu senden. Wenn neue Informationen in der Datenbank vorhanden sind, gibt ajax sie an den Client zurück. Dann kannst du es verarbeiten.

0

Da Sie unerfahren sind, würde ich vorschlagen, dass Sie bitte zuerst die W3Schools Ajax PHP-Tutorial durchlaufen ... Dort werden Sie verstehen, wie AJAX-Funktionalität zu implementieren, und Sie werden verstehen, was Ajax tun kann und was Ajax nicht kann ...