burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
23.03.2017, 13:21 Uhr - Impressum

Tutorials - mySQL - SELECT - SELECT

Tutorials - mySQL
SELECT: SELECT
Ersteinmal habe ich das Verbindungs-Script in eine extra Datei geschmissen, diese wird per include() eingebunden.
Somit steht die Verbindung zu mySQL und ich kann an die Abfrage gehen.
benutzte Codefiles connect_mySQL.php
<?php
include("connect_mySQL.php");
     /* nach dem include steht also eine Verbindung zu mySQL aufrecht */

?>
Die Abfrage bedient sich der Sprache SQL, die nicht im Ansatz was mit PHP zu tun hat (möööp, toll gell ?)
Aber sie ist relativ einfach.

Als erstes wird erst einmal alles aus der angelegten Tabelle "guestbook" ausgelesen.
Für alle mySQL-Befehle gibt es in PHP die Funktion mysql_query().
Sie gibt das mySQL-Ergebnis zurück.

Der SQL-Befehl an sich ist dieses "SELECT * FROM `guestbook`" - WÄHLE ALLES (*) VON Tabelle guestbook
benutzte MySQL-Tab. guestbook
benutzte Codefiles connect_mySQL.php
<?php
include("connect_mySQL.php");

$abfrage = mysql_query("SELECT * FROM `guestbook`");

?>
In $abfrage ist jetzt das Ergebnis der Abfrage einthalten.
Was ergibt jetzt ein "echo" der Ausgabe ?
benutzte MySQL-Tab. guestbook
benutzte Codefiles connect_mySQL.php
<?php
include("connect_mySQL.php");

$abfrage = mysql_query("SELECT * FROM `guestbook`");
echo $abfrage;     /* mal ein echo von $ausgabe */
?>
Antwort: Murks.
Per echo geht hier also nichts, und per print_r() auch nicht, das sei einfach mal so behauptet.
Was es jetzt noch braucht, ist eine Schleife, die aus dieser komischen Resource-id (was auch immer das sein soll) etwas brauchbares macht.
Hierfür gibt es diese Konstruktion:
benutzte MySQL-Tab. guestbook
benutzte Codefiles connect_mySQL.php
<?php
include("connect_mySQL.php");

$abfrage = mysql_query("SELECT * FROM `guestbook`");

          /* solang mysql_fetch_assoc() eine Zeile (row) aus der Resource "ziehen" kann ist $row jeweils eine Zeile aus der Datenbank. Und es werden nun einige Elemente des Arrays ausgegeben */
while($row = mysql_fetch_assoc($abfrage)) {
     echo "<b>$row[name] $row[email]</b><br />
          $row[nachricht]<br />
          <br />\n\n
";     
}
?>
in dem Array $row sind dann also jeweils die Spalten mit ihrem Namen ansprechbar.
© 2004-2005 - Impressum