Heim >Datenbank >MySQL-Tutorial >Warum löst mein PHP-Code den Fehler „Warnung: mysql_fetch_assoc(): angegebenes Argument ist keine gültige MySQL-Ergebnisressource' aus?

Warum löst mein PHP-Code den Fehler „Warnung: mysql_fetch_assoc(): angegebenes Argument ist keine gültige MySQL-Ergebnisressource' aus?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-30 20:30:30665Durchsuche

Why Does My PHP Code Throw a

MySQL-Abruffunktionsfehler: Ungültige Ergebnisressource

Problem:

Bei Verwendung von mysql_fetch_assoc ()-Funktion in PHP zum Abrufen von Daten aus einer MySQL-Abfrage verwenden, kann der folgende Fehler auftreten:

<code class="php">Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource</code>

Ursache:

Dieser Fehler tritt normalerweise auf, weil das $ Die an mysql_fetch_assoc() übergebene Ergebnisvariable verweist nicht auf eine gültige MySQL-Ergebnisressource. Dies kann passieren, wenn:

  • Die Abfrageausführung fehlgeschlagen ist und mysql_query() false zurückgegeben hat.
  • Die Variable $result wurde an anderer Stelle im Code überschrieben.

Lösung:

Um diesen Fehler zu beheben, stellen Sie Folgendes sicher:

  • Die Abfrage wurde erfolgreich ausgeführt, indem der Rückgabewert von mysql_query() überprüft wurde.
  • Die Variable $result wird innerhalb der Schleife nicht geändert oder überschrieben.

Hier ist ein Beispiel für die Behandlung des Fehlers:

<code class="php">$query = "SELECT UniqueID FROM configuration";
$result = mysql_query($query);

if (!$result) {
    die(mysql_error());
}

while ($row = mysql_fetch_assoc($result)) {
    // Do something with the row
}</code>

Zusätzlicher Hinweis :

Wie in der Fehlermeldung selbst erwähnt, kann dieses Problem auch durch die doppelte Nutzung von Ergebnisressourcen verursacht werden. Stellen Sie sicher, dass Sie nicht dieselbe Ergebnisressource für mehrere Abfragen wiederverwenden, da dies zu unerwarteten Ergebnissen führen kann.

Das obige ist der detaillierte Inhalt vonWarum löst mein PHP-Code den Fehler „Warnung: mysql_fetch_assoc(): angegebenes Argument ist keine gültige MySQL-Ergebnisressource' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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