Heim  >  Artikel  >  Backend-Entwicklung  >  Unterstützt PHP mysql_query() nicht?

Unterstützt PHP mysql_query() nicht?

青灯夜游
青灯夜游Original
2021-09-28 17:22:452060Durchsuche

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.

Unterstützt PHP mysql_query() nicht?

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 = &#39;fred&#39;;
$lastname  = &#39;fox&#39;;

// 构造查询
// 这是执行 SQL 最好的方式
// 更多例子参见 mysql_real_escape_string()
$query = sprintf("SELECT firstname, lastname, address, age FROM friends 
    WHERE firstname=&#39;%s&#39; AND lastname=&#39;%s&#39;",
    mysql_real_escape_string($firstname),
    mysql_real_escape_string($lastname));

// 执行查询
$result = mysql_query($query);

// 检查结果
// 下面显示了实际发送给 MySQL 的查询,以及出现的错误。这对调试很有帮助。
if (!$result) {
    $message  = &#39;Invalid query: &#39; . mysql_error() . "\n";
    $message .= &#39;Whole query: &#39; . $query;
    die($message);
}

// 结果的使用
// 尝试 print $result 并不会取出结果资源中的信息
// 所以必须至少使用其中一个 mysql 结果函数
// 参见 mysql_result(), mysql_fetch_array(), mysql_fetch_row() 等。
while ($row = mysql_fetch_assoc($result)) {
    echo $row[&#39;firstname&#39;];
    echo $row[&#39;lastname&#39;];
    echo $row[&#39;address&#39;];
    echo $row[&#39;age&#39;];
}

// 释放关联结果集的资源
// 在脚本结束的时候会自动进行
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!

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