Warum erhalte ich „Warnung: mysql_query(): 3 ist keine gültige MySQL-Link-Ressource“?
Die „Warnung: Der Fehler „mysql_query(): 3 ist keine gültige MySQL-Link-Ressource“ weist darauf hin, dass die zum Speichern der MySQL-Verbindungsressource verwendete Variable ungültig ist. PHP verwendet Ressourcen zur Darstellung externer Objekte, denen jeweils eine eindeutige Ganzzahl-ID zugewiesen ist.
Fehlgeschlagene Datenbankverbindungen:
Eine häufige Ursache für diesen Fehler ist eine fehlgeschlagene Datenbankverbindung. Wenn die Verbindung fehlschlägt, wird die Variable, die die Ressource enthalten sollte, null, was zum Fehler „Angegebene Variable ist keine gültige MySQL-Link-Ressource“ führt.
Wiederverwendung von Verbindungen:
Die Funktion mysql_connect() verwendet standardmäßig vorhandene Verbindungen wieder, anstatt neue zu erstellen. Dies kann zu Problemen führen, wenn eine vorherige Verbindung unerwartet geschlossen wurde oder wenn verschiedene Datenbanken auf demselben Server verwendet werden. Durch die Übergabe von true an den Parameter $new_link kann für jeden Aufruf von mysql_connect() eine neue Verbindung erstellt werden.
Beispiel (fehlgeschlagene Verbindung):
<code class="php">$link = mysql_connect('localsoth','baduser','badpass'); // failed connection $result = mysql_query("SELECT 1", $link); // throws error</code>
Beispiel (wiederverwendete Verbindung):
<code class="php">$link1 = mysql_connect('localhost','user','pass'); // resource id 1 $link2 = mysql_connect('localhost','user','pass'); // reuse resource id 1 mysql_close($link2); // closes resource id 1 mysql_query("SELECT 1", $link1); // fails due to closed connection</code>
Lösung:
Um diesen Fehler zu beheben, stellen Sie sicher, dass die Datenbankverbindung hergestellt ist und während der gesamten Zeit geöffnet bleibt Skriptausführung. Vermeiden Sie es, Verbindungen vorzeitig zu schließen und erwägen Sie die Verwendung der MySQLi-Erweiterung oder des PDO anstelle der älteren MySQL-Erweiterung.
Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Fehlermeldung „Warnung: mysql_query(): 3 ist keine gültige MySQL-Link-Ressource“?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!