burghi'sphp-dummies.de
PHP für Einsteiger und Fortgeschrittenere - an laufenden Scripten erklärt
10.09.2010, 02:44 Uhr - Impressum
Erstellt ein Array
Zählt die Elemente einer Variable oder Attribute eines Objekts
Erzeugt Daten zur Ablaufverfolgung
Definiert eine Konstante
Teilt einen String anhand eines Trennzeichens
Prüft, ob Variable ein Array ist
Prüft die Existenz einer Variablen
Gibt den aktuellen Unix-Timestamp/Zeitstempel mit Mikrosekunden zurück
Liefert die Anzahl betroffener Datensätze einer vorhergehenden MySQL Operation
Öffnet eine Verbindung zu einem MySQL-Server
Liefert den Fehlertext der zuvor ausgeführten MySQL Operation
Liefert einen Datensatz als assoziatives Array
Liefert die ID einer vorherigen INSERT-Operation
Sendet eine Anfrage an MySQL
Auswahl einer MySQL Datenbank
Führt eine Suche mit einem regulären Ausdruck durch
Gibt Variablen-Informationen in lesbarer Form aus
Setzt einen String in Großbuchstaben um
Entfernt Whitespaces (oder andere Zeichen) am Anfang und Ende eines Strings

Tutorials - Praxis - MySQL geiler befragen - Der Parameter Nr. 2

Tutorials - Praxis
MySQL geiler befragen: Der Parameter Nr. 2
Manchmal ist es praktisch, direkt auf einen Eintrag zugreifen zu können,
Dafür dient der 2. Parameter.
Man gibt den "Primary Key" (oder jede andere Spalte mit eindeutigen Werten) der Tabelle an, dann kann man schön immer wieder auf einzelne Datensätze zugreifen:
In diesem Fall ist die immer eindeutige Spalte (Primary Key - den jede Tabelle ja haben sollte) das Feld "id"
Sollte die Spalte nicht eindeutig sein, wird der nächste Wert den vorherigen überschreiben...
benutzte MySQL-Tab. kunden2
benutzte Codefiles connect_mySQL.php functions/mysql_q.php
<?php
include("connect_mySQL.php");
include("functions/mysql_q.php");

$Kunden = mysql_q("SELECT * FROM kunden2", "id");

echo "Der Kunde mit der id 5 ist " . $Kunden[5]['vorname'] . " " . $Kunden[5]['name'];
?>
benutzte MySQL-Tab. kunden2
benutzte Codefiles connect_mySQL.php functions/mysql_q.php
<?php
include("connect_mySQL.php");
include("functions/mysql_q.php");

$Kunden = mysql_q("SELECT * FROM kunden2", "id");
foreach($Kunden as $val) {
     echo $val['name'] . " hat <b>" . $Kunden[$val['berater_id']]['name'] . "</b> als Berater<br />\n";
}
?>
Man kann so auch Datensätze "gruppieren",
so zum Beispiel hier nach "berater_id":
Dafür übergibt man als 2. Parameter "berater_id, *" an.
Der Stern kommt daher, dass berater_id nicht eindeutig ist.
Dann muss eine neue Array-Ebene eingefügt werden. Das tut der Stern.
Die "berater_id" wird dann als Key der erstern Arrays-Ebene benutzt,
die Ebene mit dem Stern (die 2.) wird nur durchnummeriert:
benutzte MySQL-Tab. kunden2
benutzte Codefiles connect_mySQL.php functions/mysql_q.php
<?php
include("connect_mySQL.php");
include("functions/mysql_q.php");

echo "<pre>";     /* dieser HTML-Befehl macht "\n"-Zeilenumbrüche und "\t"-Tabs sichtbar */

print_r(mysql_q("SELECT * FROM kunden2", "berater_id, *"));
?>
benutzte MySQL-Tab. kunden2
benutzte Codefiles connect_mySQL.php functions/mysql_q.php
<?php
include("connect_mySQL.php");
include("functions/mysql_q.php");

$Kunden = mysql_q("SELECT * FROM kunden2", "berater_id,*");
foreach($Kunden as $berater_id => $kunde) {
     echo "<b>Berater-ID: $berater_id</b><br />\n";
     foreach($kunde as $value) {
          echo "$value[id] $value[vorname] $value[name]<br />\n";
     }
}
?>
Das ganze ist rekursiv gebastelt, also zur Not könnte man das Array 100-Ebenig machen.
© 2004-2005 - Impressum