Du bist hier: Tips » Scripte » PHP
PHP
Referenzliste

mysql_fetch_assoc

MySQL-Funktionen

    Befehl:
array mysql_fetch_assoc ( resource $result )


    Parameter-Liste:
NameBeschreibung
resultDas 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.


    Beschreibung:
Liefert ein assoziatives Array, das der geholten Zeile entspricht und bewegt den internen Datenatzzeiger 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.


    Aktiv in Version:
(PHP 4 >= 4.0.3, PHP 5, PHP 7)

    Hinweis:
Hinweis:

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.

Diese Funktion setzt NULL-Felder auf den PHP Wert-NULL.

Feldnamen, die von dieser Funktion zurückgegeben werden, unterscheiden sich in der Gross-/Kleinschreibung.


    Warnung:
Warnung:

Diese Erweiterung ist ab PHP 5.5.0 veraltet und wird in der Zukunft entfernt werden. Stattdessen wird der MySQLi oder PDO_MYSQL Verlängerung verwendet werden. Siehe auch MySQL: Auswahl einer API Führung und bezogenen FAQ für weitere Informationen. Alternativen zu dieser Funktion sind:

    Siehe auch:
Liefert einen Datensatz als indiziertes Array
 
Liefert einen Datensatz als assoziatives Array, als numerisches Array oder beides
 
Bewegt den internen Ergebnis-Zeiger
 
Sendet eine Anfrage an MySQL
 
Liefert den Fehlertext der zuvor ausgeführten MySQL Operation
 

An ausf�hrliches mysql_fetch_assoc() - Beispiel


Eingabe:
<?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);

?>



MySQL-Funktionen