ホームページ  >  記事  >  バックエンド開発  >  php は mysql_query() をサポートしていませんか?

php は mysql_query() をサポートしていませんか?

青灯夜游
青灯夜游オリジナル
2021-09-28 17:22:452048ブラウズ

PHP では、バージョン 5.5.0 以降は mysql_query() 関数をサポートしていませんが、5.5.0 より前のバージョンはサポートしています。 mysql_query() 関数は PHP 5.5.0 で非推奨となり、PHP 7.0.0 で削除されました。

php は mysql_query() をサポートしていませんか?

このチュートリアルの動作環境: Windows7 システム、PHP バージョン 7.1、DELL G3 コンピューター

PHP はバージョン 5.5 から始まります。 0 mysql_query() 関数はサポートされていません。

mysql_query() 関数は PHP 5.5.0 以降で非推奨となり、PHP 7.0.0 以降では削除されます。これは、MySQLi または PDO_MySQL 拡張機能に置き換える必要があります。この関数の代替関数は次のとおりです:

  • mysqli_query()

  • PDO::query( )

mysql_query() 関数を使用する場合は、PHP 5.5.0 より前のバージョンを使用する必要があります。

説明: mysql_query()

mysql_query() — MySQL クエリを送信します。

構文:

mysql_query(string $query, resource $link_identifier = NULL): resource

mysql_query() 指定された link_identifier に関連付けられたサーバー内の現在アクティブなデータベースにクエリを送信します (複数のクエリはサポートされていません)。

パラメータ

  • クエリ: SQL クエリ ステートメント

    クエリ文字列はセミコロンで終わってはいけません。クエリに埋め込まれたデータは適切にエスケープする必要があります。

  • link_identifier: MySQL 接続。接続 ID が指定されていない場合は、mysql_connect() によって最後に開かれた接続が使用されます。接続が見つからない場合は、パラメータなしで mysql_connect() を呼び出して接続の作成が試行されます。接続が見つからない場合、または接続を確立できない場合は、E_WARNING レベルのエラーが生成されます。

戻り値

mysql_query() は、SELECT、SHOW、DESCRIBE、EXPLAIN およびその他のステートメントのリソースのみを返し、クエリにエラーがある場合は false を返します。 。

INSERT、UPDATE、DELETE、DROP などの他のタイプの SQL ステートメントの場合、mysql_query() は実行が成功した場合は true を返し、エラーが発生した場合は false を返します。

返された結果リソースは、結果テーブルを処理して返されたデータを取得するために、mysql_fetch_array() およびその他の関数に渡す必要があります。

クエリが成功したと仮定すると、mysql_num_rows() を呼び出して SELECT ステートメントに対応して返された行の数を確認するか、mysql_affected_rows() を呼び出して DELETE、INSERT、 REPLACE、または UPDATE ステートメント。

Mysql_query() は、クエリ ステートメントで参照されているテーブルにアクセスする権限がない場合にも false を返します。

例: mysql_query() はリソースを返します。

<?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);
?>

推奨学習: 「PHP ビデオ チュートリアル

以上がphp は mysql_query() をサポートしていませんか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。