Wie man HTML5 Tabellen für SQL Ausgabe verwenden

Die Grundeinheit der Struktur in SQL heißt a Tabelle denn es ist in der Regel in einem tabellarischen Format angezeigt. HTML5 hat auch eine Tabellenstruktur, die zur Ausgabe von SQL-Daten ideal ist. ContactTable.php, zeigt das Kontakt Informationen innerhalb einer HTML-Tabelle.

Die Tische sind eine sehr häufige Art und Weise zur Ausgabe von SQL-Ergebnissen. Es gibt einen großen Unterschied zwischen dem Tabellenausgabe und der Grundversion einer Tabelle. In einer Tabelle haben Sie eine separate Zeile enthält Feldnamen. Hier ist der Code:

bild0.jpg
contact.php

? Lt; phptry {$ con = new PDO ( 'mysql: host = localhost-dbname = dbName "," user "," PWD ") - $ Ver-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION) - $ query = "SELECT * FROM Kontakt" - // ersten Durchgang wird nur die Spalte namesprint "

N "- $ result = $ Kon-> query ($ query) - nur die erste Zeile zurückgeben // (wir brauchen nur Feldnamen) $ row = $ result-> holen (PDO :: FETCH_ASSOC) -Druck" N "-foreach ($ row wie $ Feld => $ value) {print" N "-} // end foreachprint" N "- // zweite Abfrage wird die Daten $ data = $ Kon-> query ($ query) - $ Daten-> setFetchMode (PDO :: FETCH_ASSOC) -foreach ($ data als $ row) {print" N "-foreach ($ row wie $ name => $ value) {print" N "-} // end Feld loopprint" N "-} // end Rekord loopprint"
$ Feld
$ value
N "-} catch (PDOException $ e) {echo" ERROR: '. $ E-> getMessage () -} // Ende versuchen>?

Sie verwechselt werden könnte, dass eine Tabelle hier benutzt wird. Die Tische sind nicht böse: Sie sind so konzipiert, nicht nur ein Seitenlayout-Mechanismus sein. Tische, jedoch sind entworfen tabellarische Daten anzuzeigen, und das Ergebnis einer Datenabfrage ist so ziemlich die Definition von Tabellendaten. Sie können (und sollten) noch CSS für bestimmte Layout Einzelheiten der Tabelle. Die Tische sind in Ordnung, wenn verwendet, um Daten zu präsentieren.

Dieser Code ist immer noch sehr ähnlich dem Grund contact.php Programm. Extrahiert sie Daten aus der Datenbank genau die gleiche Weise. Der wesentliche Unterschied ist, wie Feldnamen behandelt werden. Die Feldnamen werden in Tabellenüberschriften gehen, und nur die Werte aus jeder Zeile gedruckt. Um diese Arbeit zu machen, gehen Sie folgendermaßen vor:

  1. Erstellen Sie eine normale MySQL-Verbindung.

    Beginnen Sie mit dem Standardanschluss. Nicht über die Formatierung kümmern, bis man einigermaßen sicher sind, dass Sie Daten aus der Datenbank zu lesen.

     $ Con = new PDO ( 'mysql: host = localhost-dbname = dbName "," user "," PWD ") - $ Ver-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION) -
  2. Bestimmen Sie Ihre Anfrage.

    Erstellen Sie eine Abfrage, die eine Tabelle, eine Ansicht oder Suchergebnis wird produzieren. Bewahren Sie es in einer Variablen, so dass Sie sie verwenden können. (Sie erhalten die gleiche Abfrage zweimal in dieser Übung verwenden.)

     $ Query = "SELECT * FROM Kontakt" -
  3. drucken Sie die Tabelle Tag, bevor irgendwelche Ergebnisse zu extrahieren.

    Alle Abfragedaten werden in der Tabelle angezeigt werden, so druckt das Tabelle Tag, bevor Sie den Druck etwas beginnen, das in der Tabelle gehen sollte.

     drucken " N "-
  4. Machen Sie einen ersten Durchgang Feldnamen zu extrahieren.

    Sie werden tatsächlich zweimal die Datenbank abzufragen. Das erste Mal, möchten Sie einfach die Feldnamen, die Sie die Tabellenköpfe verwenden werden, zu bauen, so braucht es nur eine Zeile.

     $ result = $ Kon-> query ($ query) - // nur die erste Zeile zurückkehren (wir brauchen nur Feldnamen) $ row = $ result-> holen (PDO :: FETCH_ASSOC) -

    Das holen Methode zieht den nächsten verfügbaren Datensatz aus der $ result Variable. Sie möchten die Aufzeichnungsdaten in assoziatives Array-Format, so passieren die PDO :: FETCH_ASSOC konstant dies anzuzeigen.

  5. Drucken Sie die Feldnamen als Tabellenüberschriften.

    Nun, da Sie einen einzelnen Datensatz haben, gehen durch diesen Datensatz als assoziatives Array und verwenden Sie die $ Feld Werte Feldnamen auszudrucken.

     drucken "  N "-foreach ($ row wie $ Feld => $ value) {print" $ Feld N "-} // end foreachprint"  N "-
  6. Machen Sie eine zweite Abfrage.

    Führen Sie nun die Abfrage erneut mit der $ Kon-> query () Verfahren. Dieses Mal tun Sie eine normale Abfrage mit mehreren Ergebnissen. Vergessen Sie nicht, den Fetch-Modus zu assoziatives Array zu setzen.

     // Zweite Abfrage wird die Daten $ data = $ Kon-> query ($ query) - $ Daten-> setFetchMode (PDO :: FETCH_ASSOC) -
  7. Verwenden Sie verschachtelte Schleifen Datenelemente zu drucken.

    Verwenden Sie die normalen verschachtelten Schleifen Trick alle Datenelemente zu drucken mit jeder Datensatz eine Zeile der HTML-Tabelle aufzunehmen.

     foreach ($ data als $ row) {print "  N "-foreach ($ row wie $ name => $ value) {print" $ value N "-} // end Feld loopprint"  N "-} // end Aufn

Menü