Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Warnung: Lösung für mysql_fetch_array() erwartet Parameter

PHP-Warnung: Lösung für mysql_fetch_array() erwartet Parameter

WBOY
WBOYOriginal
2023-06-22 09:41:381106Durchsuche

PHP-Warnung: mysql_fetch_array() erwartet Parameter – Gründe und Lösungen für Warnmeldungen

Wenn wir in PHP die Funktion mysql_fetch_array() verwenden, erscheint manchmal diese Warnmeldung: PHP-Warnung: mysql_fetch_array() erwartet Parameter. Diese Warnmeldung kommt sehr häufig vor, ist aber eigentlich leicht zu beheben. In diesem Artikel werde ich die Gründe für diese Warnmeldung analysieren und entsprechende Lösungen anbieten.

Der Grund, warum PHP-Warnung: mysql_fetch_array() erwartet Parameter – Warnmeldung wird angezeigt

Bei Verwendung der Funktion mysql_fetch_array() müssen wir einen Parameter übergeben – die Ressourcenkennung des Abfrageergebnisses (Ergebniskennung). Dieser Ressourcenbezeichner wird nach der Abfrage von Daten mit der Funktion mysql_query() zurückgegeben. Wenn wir diesen Ressourcenbezeichner nicht korrekt übergeben, wird die Warnmeldung „PHP-Warnung: mysql_fetch_array() erwartet Parameter“ angezeigt.

Das Folgende ist ein Beispielcode, in dem diese Warnmeldung erscheint:

<?php  
// 连接数据库  
$link = mysql_connect('localhost', 'root', '123456') or die('Could not connect: ' . mysql_error());  
  
// 选择数据库  
mysql_select_db('test', $link) or die('Could not select database');  
  
// 执行查询  
$result = mysql_query('SELECT * FROM `user`');  
  
// 遍历结果集  
while($row = mysql_fetch_array()) {  
    // 输出每行数据  
    echo $row['username'] . "    " . $row['password'] . "
";  
}  
  
// 释放查询结果  
mysql_free_result($result);  
  
// 关闭数据库连接  
mysql_close($link);  
?>

Im obigen Code übergibt die Funktion mysql_fetch_array() keine Parameter, daher erscheint diese Warnmeldung.

So lösen Sie die PHP-Warnung: mysql_fetch_array() erwartet Parameter – Warnmeldung

Die Lösung dieses Problems ist sehr einfach: Übergeben Sie einfach die Ressourcenkennung des Abfrageergebnisses in der Funktion mysql_fetch_array(). In unserem Beispielcode müssen wir nur den Aufruf dieser Funktion in die folgende Form ändern:

while($row = mysql_fetch_array($result)) {  
    // 输出每行数据  
    echo $row['username'] . "    " . $row['password'] . "
";  
} 

Der Code übergibt nun korrekt die Ressourcenkennung, sodass diese Warnmeldung nicht mehr angezeigt wird.

Darüber hinaus wird auch empfohlen, die mysql_-Funktionen nicht zu verwenden, da sie als veraltete Funktionen markiert wurden. Stattdessen gibt es die Funktion mysqli_ und PDO (PHP Data Objects).

Zusammenfassung

PHP-Warnung: mysql_fetch_array() erwartet Parameter – Die Warnmeldung wird dadurch verursacht, dass der Parameter der Funktion mysql_fetch_array() – die Ressourcenkennung des Abfrageergebnisses – nicht korrekt übergeben wird. Um dieses Problem zu lösen, übergeben Sie einfach diese Ressourcenkennung im Funktionsaufruf. Gleichzeitig wird auch empfohlen, modernere und sicherere Datenbankzugriffsmethoden wie mysqli_*-Funktionen und PDO zu verwenden.

Das obige ist der detaillierte Inhalt vonPHP-Warnung: Lösung für mysql_fetch_array() erwartet Parameter. 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