Heim > Artikel > Backend-Entwicklung > Unterstützt PHP mysql_query() nicht?
In PHP unterstützen Versionen 5.5.0 und höher die Funktion mysql_query() nicht, Versionen unter 5.5.0 jedoch schon. Die Funktion mysql_query() ist ab PHP 5.5.0 veraltet und ab PHP 7.0.0 entfernt.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 7.1, DELL G3-Computer
PHP unterstützt die Funktion mysql_query() seit Version 5.5.0 nicht mehr.
Die Funktion mysql_query() ist seit PHP 5.5.0 veraltet und wurde seit PHP 7.0.0 entfernt. Sie sollte durch die MySQLi- oder PDO_MySQL-Erweiterung ersetzt werden. Die Alternativen zu dieser Funktion sind:
mysqli_query()
PDO::query()
Wenn Sie die Funktion mysql_query() verwenden möchten, Sie müssen PHP 5.5-Versionen unter .0 verwenden.
Beschreibung: mysql_query()
mysql_query() – Senden Sie eine MySQL-Abfrage.
Syntax:
mysql_query(string $query, resource $link_identifier = NULL): resource
mysql_query() Sendet eine Abfrage an die aktuell aktive Datenbank auf dem Server, die mit der angegebenen Link_ID verknüpft ist (mehrere Abfragen werden nicht unterstützt).
Parameter
Abfrage: SQL-Abfrageanweisung
Die Abfragezeichenfolge sollte nicht mit einem Semikolon enden. In Abfragen eingebettete Daten sollten ordnungsgemäß maskiert werden.
link_identifier: MySQL-Verbindung. Wenn keine Verbindungs-ID angegeben ist, wird die zuletzt von mysql_connect() geöffnete Verbindung verwendet. Wenn die Verbindung nicht gefunden wird, wird versucht, sie durch den Aufruf von mysql_connect() ohne Parameter herzustellen. Wenn keine Verbindung gefunden wird oder nicht hergestellt werden kann, wird ein Fehler der Stufe E_WARNING generiert.
Rückgabewert
mysql_query() gibt nur eine Ressource für SELECT, SHOW, DESCRIBE, EXPLAIN und andere Anweisungen zurück und gibt false zurück, wenn in der Abfrage ein Fehler vorliegt.
Für andere Arten von SQL-Anweisungen wie INSERT, UPDATE, DELETE, DROP usw. gibt mysql_query() true zurück, wenn die Ausführung erfolgreich war, und false, wenn ein Fehler auftritt.
Die zurückgegebene Ergebnisressource sollte an mysql_fetch_array() und andere Funktionen übergeben werden, um die Ergebnistabelle zu verarbeiten und die zurückgegebenen Daten abzurufen.
Vorausgesetzt, die Abfrage ist erfolgreich, können Sie mysql_num_rows() aufrufen, um zu sehen, wie viele Zeilen entsprechend der SELECT-Anweisung zurückgegeben wurden, oder mysql_affected_rows() aufrufen, um zu sehen, wie viele Zeilen entsprechend der DELETE-, INSERT-, REPLACE- oder UPDATE-Anweisung betroffen waren .
Mysql_query() gibt auch false zurück, wenn Sie keine Berechtigung haben, auf die Tabelle zuzugreifen, auf die in der Abfrageanweisung verwiesen wird.
Beispiel: mysql_query() gibt eine Ressource zurück.
<?php // 这应该由用户提供,下面是一个示例 $firstname = 'fred'; $lastname = 'fox'; // 构造查询 // 这是执行 SQL 最好的方式 // 更多例子参见 mysql_real_escape_string() $query = sprintf("SELECT firstname, lastname, address, age FROM friends WHERE firstname='%s' AND lastname='%s'", mysql_real_escape_string($firstname), mysql_real_escape_string($lastname)); // 执行查询 $result = mysql_query($query); // 检查结果 // 下面显示了实际发送给 MySQL 的查询,以及出现的错误。这对调试很有帮助。 if (!$result) { $message = 'Invalid query: ' . mysql_error() . "\n"; $message .= 'Whole query: ' . $query; die($message); } // 结果的使用 // 尝试 print $result 并不会取出结果资源中的信息 // 所以必须至少使用其中一个 mysql 结果函数 // 参见 mysql_result(), mysql_fetch_array(), mysql_fetch_row() 等。 while ($row = mysql_fetch_assoc($result)) { echo $row['firstname']; echo $row['lastname']; echo $row['address']; echo $row['age']; } // 释放关联结果集的资源 // 在脚本结束的时候会自动进行 mysql_free_result($result); ?>
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonUnterstützt PHP mysql_query() nicht?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!