Comment utiliser les tables de HTML5 pour la sortie SQL

L'unité de base de la structure dans SQL est appelé table car il est généralement affiché dans un format tabulaire. HTML5 a également une structure de la table, ce qui est idéal pour émettre en sortie des données SQL. ContactTable.php, affiche le contact informations à l'intérieur d'un tableau HTML.

Les tableaux sont un moyen très courant de sortie des résultats SQL. Il ya une grande différence entre la sortie de la table et de la version de base d'une table. Dans un tableau, vous avez une ligne séparée contenant les noms des champs. Voici le code:

image0.jpg
contact.php

? lt; phptry {$ con = new PDO ('mysql: host = localhost-dbname = dbName "," utilisateur "," passwd ") - $ con-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION) - $ query = "SELECT * FROM contact» - // premier passage obtient juste la namesprint de colonne "

n "- $ result = $ con-> query ($ query) - // Retourne uniquement la première ligne (nous avons seulement besoin des noms de champ) $ row = $ result-> fetch (PDO :: FETCH_ASSOC) -print" n "-foreach ($ row que $ field => $ value) {print" n "-} // fin foreachprint" n "- // deuxième requête obtient les données de $ de données = $ con-> query ($ query) - $ data-> setFetchMode (PDO :: FETCH_ASSOC) -foreach ($ data que $ row) {print" n "-foreach ($ row que $ nom => $ value) {print" n "-} // champ loopprint de fin" n "-} // fiche fin loopprint"
champ de $
valeur de $
n "-} catch (PDOException $ e) {echo 'erreur:'. $ e-> getMessage () -} // end try>?

Vous pourriez être confus qu'une table est utilisée ici. Tables ne sont pas mauvais: Ils sont tout simplement pas conçus pour être un mécanisme de mise en page. Tables, toutefois, sont conçu pour afficher des données tabulaires, et le résultat d'une requête de données est à peu près la définition des données tabulaires. Vous pouvez (et devez) toujours utiliser CSS pour les détails spécifiques de mise en page de la table. Les tables sont bien lorsqu'il est utilisé pour présenter des données.

Ce code est encore très semblable au programme de contact.php base. Il extrait de la base de données de la même façon. La principale différence est la façon dont les noms de champs sont traités. Les noms de champs iront dans les titres des tableaux, et seules les valeurs sont imprimés de chaque rangée. Pour faire ce travail, procédez comme suit:

  1. Construire une connexion MySQL normal.

    Commencez avec la connexion standard. Ne vous inquiétez pas à propos de la mise en forme jusqu'à ce que vous êtes raisonnablement certain que vous pouvez lire les données à partir de la base de données.

     $ con = new PDO ('mysql: host = localhost-dbname = dbName "," utilisateur "," passwd ") - $ con-> setAttribute (PDO :: ATTR_ERRMODE, PDO :: ERRMODE_EXCEPTION) -
  2. Déterminez votre requête.




    Créer une requête qui va produire une table, une vue ou un résultat de recherche. Conservez-la dans une variable de sorte que vous pouvez l'utiliser. (Vous allez utiliser la même requête à deux reprises dans cet exercice.)

     $ query = "SELECT * FROM contact» -
  3. Imprimer la table tag avant d'extraire aucun résultat.

    Toutes les données de la requête seront affichés à l'intérieur de la table, de sorte que l'impression table tag avant de commencer quoi que ce soit l'impression qui devrait aller à l'intérieur de la table.

     impression " n "-
  4. Faire une première passe pour extraire les noms de champ.

    Vous allez effectivement pour interroger la base de données deux fois. La première fois, vous voulez simplement les noms des champs, que vous utilisez pour construire les en-têtes de table, de sorte qu'il ne nécessite qu'une seule ligne.

     $ result = $ con-> query ($ query) - // retourne uniquement la première ligne (nous avons seulement besoin des noms de champ) $ row = $ result-> fetch (PDO :: FETCH_ASSOC) -

    La chercher méthode tire l'enregistrement disponible suivant à partir de la $ resultat variable. Vous voulez que les données d'enregistrement en format de tableau associatif, alors passez le PDO :: FETCH_ASSOC constante pour l'indiquer.

  5. Imprimer les noms des champs comme en-têtes de table.

    Maintenant que vous avez un seul enregistrement, marcher à travers ce dossier comme un tableau associatif et utiliser le champ de $ valeurs d'imprimer les noms de champs.

     impression "  n "-foreach ($ row que $ field => $ value) {print" champ de $ n "-} // fin foreachprint"  n "-
  6. Faire une deuxième requête.

    Maintenant exécuter à nouveau la requête avec le $ con-> query () Procédé. Cette fois, vous faites une requête ordinaire avec de multiples résultats. Ne pas oublier de régler le mode de tableau associatif chercher.

     // deuxième requête obtient les données $ data = $ con-> query ($ query) - $ data-> setFetchMode (PDO :: FETCH_ASSOC) -
  7. Utilisez boucles imbriquées pour imprimer des éléments de données.

    Utilisez l'astuce ordinaire imbriqué-boucles d'imprimer sur tous les éléments de données avec chaque enregistrement prenant une ligne de la table HTML.

     foreach (données $ que $ row) {de print "  n "-foreach ($ row que $ nom => $ value) {print" valeur de $ n "-} // champ loopprint de fin"  n "-} // boucle Fin de l'enregistrement


» » » » Comment utiliser les tables de HTML5 pour la sortie SQL