Heim > Datenbank > MySQL-Tutorial > Warum gibt „mysql_fetch_array()' „erwartet, dass Parameter 1 eine Ressource ist, boolescher Wert gegeben' zurück?

Warum gibt „mysql_fetch_array()' „erwartet, dass Parameter 1 eine Ressource ist, boolescher Wert gegeben' zurück?

Patricia Arquette
Freigeben: 2025-01-01 07:30:10
Original
650 Leute haben es durchsucht

Why Does `mysql_fetch_array()` Return

MySQL-Ressourcenfehler verstehen

Wenn Sie versuchen, Daten aus einer MySQL-Tabelle mithilfe prozeduraler MySQL-Funktionen wie mysql_fetch_array() abzurufen, kann dies passieren Es kommt der Fehler: „mysql_fetch_array() erwartet, dass Parameter 1 eine Ressource ist, boolescher Wert angegeben“. Dieser Fehler tritt normalerweise auf, wenn die Abfrage aus verschiedenen Gründen fehlschlägt.

Um dieses Problem zu beheben, ist es wichtig, den Wert der Variablen $result zu überprüfen, bevor Sie sie an die Funktion mysql_fetch_array() übergeben. Wenn die Abfrage fehlschlägt, wird $result auf false gesetzt.

Zum Beispiel in Ihrem bereitgestellten PHP-Code:

$result = mysql_query('SELECT * FROM Users WHERE UserName LIKE $username');
Nach dem Login kopieren

Sie haben einen Syntaxfehler in Ihrer SQL-Abfrage. Die korrekte Syntax für den LIKE-Operator besteht darin, die Suchzeichenfolge in einfache Anführungszeichen zu setzen:

$result = mysql_query("SELECT * FROM Users WHERE UserName LIKE '$username'");
Nach dem Login kopieren

Sobald Sie den Syntaxfehler korrigiert haben, müssen Sie wie folgt überprüfen, ob $result nicht falsch ist:

if($result !== FALSE) {
    while($row = mysql_fetch_array($result)) {
        echo $row['FirstName'];
    }
} else {
    trigger_error(mysql_error(), E_USER_ERROR);
}
Nach dem Login kopieren

Die Funktion mysql_error() liefert weitere Details zum Abfragefehler, die Sie dem Benutzer anzeigen oder zu Debugging-Zwecken protokollieren können. Durch die ordnungsgemäße Behandlung von Abfragefehlern können Sie den PHP-Ressourcenfehler vermeiden und Daten erfolgreich aus der MySQL-Tabelle abrufen.

Das obige ist der detaillierte Inhalt vonWarum gibt „mysql_fetch_array()' „erwartet, dass Parameter 1 eine Ressource ist, boolescher Wert gegeben' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage