mysql_fetch_assoc
(PHP 4 >= 4.0.3, PHP 5)
mysql_fetch_assoc — Liefert einen Datensatz als assoziatives Array
Diese Erweiterung ist seit PHP 5.5.0 als veraltet markiert und wurde in PHP 7.0.0 entfernt. Verwenden Sie stattdessen die Erweiterungen MySQLi oder PDO_MySQL. Weitere Informationen finden Sie im Ratgeber MySQL: Auswahl einer API und den zugehörigen FAQ. Alternativen zu dieser Funktion umfassen:
Beschreibung
$result
) : arrayLiefert ein assoziatives Array, das der geholten Zeile entspricht und bewegt den internen Datensatzzeiger vorwärts. mysql_fetch_assoc() entspricht in der Funktionsweise exakt dem Aufruf von mysql_fetch_array() mit Angabe von MYSQL_ASSOC als optionalen zweiten Parameter. Diese Funktion liefert Ihnen nur ein assoziatives Array.
Parameter-Liste
-
Ergebnis
-
Das Ergebnis Ressource, das ausgewertet wird. Dieses Ergebnis kommt von einem Aufruf von mysql_query().
Rückgabewerte
Gibt ein Array von Zeichenketten zurück, das der gelesenen Zeile entspricht
oder FALSE
falls keine weiteren Zeilen vorhanden sind.
Falls zwei oder mehrere Felder des Ergebnisses den gleichen Feldnamen haben, dann wird nur der Wert des letzten Felds im Array unter diesem Feldnamen abgelegt. Um auch auf die anderen, gleichnamigen, Felder zugreifen zu können, müssen Sie entweder numerische Indizes und damit mysql_fetch_row() benutzen, oder Aliase für Ihre Felder anlegen. Zur Verwendung von Aliasen schauen Sie sich das Beispiel unter der Beschreibung von mysql_fetch_array() an.
Beispiele
Beispiel #1 Ein ausführliches mysql_fetch_assoc() Beispiel
<?php
$conn = mysql_connect("localhost", "mysql_user", "mysql_password");
if (!$conn) {
echo "Keine Verbindung zu DB möglich: " . mysql_error();
exit;
}
if (!mysql_select_db("mydbname")) {
echo "Konnte mydbname nicht selektieren: " . mysql_error();
exit;
}
$sql = "SELECT id as userid, fullname, userstatus
FROM sometable
WHERE userstatus = 1";
$result = mysql_query($sql);
if (!$result) {
echo "Konnte Abfrage ($sql) nicht erfolgreich ausführen von DB: " . mysql_error();
exit;
}
if (mysql_num_rows($result) == 0) {
echo "Keine Zeilen gefunden, nichts auszugeben, also Ende";
exit;
}
// Solange eine Zeile mit Daten vorhanden ist, schreibe dies Zeile in $row als
// assoziatives Array
// Hinweis: Wenn sie nur eine Ergebniszeile erwarten, benötigen sie keine Schleife
// Hinweis: Wenn sie extract($row) innerhalb dieser Schleife schreiben,
// erzeugen sie $userid, $fullname und $userstatus
while ($row = mysql_fetch_assoc($result)) {
echo $row["userid"];
echo $row["fullname"];
echo $row["userstatus"];
}
mysql_free_result($result);
?>
Anmerkungen
Hinweis: Performance
Zu betonen ist, dass der Gebrauch von mysql_fetch_array() nicht signifikant langsamer ist als mysql_fetch_row(), obwohl die Funktion einen sichtlichen Mehrwert bietet.
Hinweis: Feldnamen, die von dieser Funktion zurückgegeben werden, unterscheiden sich in der Groß-/Kleinschreibung.
Hinweis: Diese Funktion setzt NULL-Felder auf den PHP Wert-
NULL
.
Siehe auch
- mysql_fetch_row() - Liefert einen Datensatz als indiziertes Array
- mysql_fetch_array() - Liefert einen Datensatz als assoziatives Array, als numerisches Array oder beides
- mysql_data_seek() - Bewegt den internen Ergebnis-Zeiger
- mysql_query() - Sendet eine Anfrage an MySQL
- mysql_error() - Liefert den Fehlertext der zuvor ausgeführten MySQL Operation
Deutsche Übersetzung
Sie haben gebeten, diese Seite auf Deutsch zu besuchen. Momentan ist nur die Oberfläche übersetzt, aber noch nicht der gesamte Inhalt.Wenn Sie mir bei Übersetzungen helfen wollen, ist Ihr Beitrag willkommen. Alles, was Sie tun müssen, ist, sich auf der Website zu registrieren und mir eine Nachricht zu schicken, in der Sie gebeten werden, Sie der Gruppe der Übersetzer hinzuzufügen, die Ihnen die Möglichkeit gibt, die gewünschten Seiten zu übersetzen. Ein Link am Ende jeder übersetzten Seite zeigt an, dass Sie der Übersetzer sind und einen Link zu Ihrem Profil haben.
Vielen Dank im Voraus.
Dokument erstellt 30/01/2003, zuletzt geändert 26/10/2018
Quelle des gedruckten Dokuments:https://www.gaudry.be/de/php-rf-function.mysql-fetch-assoc.html
Die Infobro ist eine persönliche Seite, deren Inhalt in meiner alleinigen Verantwortung liegt. Der Text ist unter der CreativeCommons-Lizenz (BY-NC-SA) verfügbar. Weitere Informationen auf die Nutzungsbedingungen und dem Autor.
Referenzen
Diese Verweise und Links verweisen auf Dokumente, die während des Schreibens dieser Seite konsultiert wurden, oder die zusätzliche Informationen liefern können, aber die Autoren dieser Quellen können nicht für den Inhalt dieser Seite verantwortlich gemacht werden.
Der Autor Diese Website ist allein dafür verantwortlich, wie die verschiedenen Konzepte und Freiheiten, die mit den Nachschlagewerken gemacht werden, hier dargestellt werden. Denken Sie daran, dass Sie mehrere Quellinformationen austauschen müssen, um das Risiko von Fehlern zu reduzieren.