ホームページ データベース mysql チュートリアル PHP5 mysqli的prepare准备语句使用说明_MySQL

PHP5 mysqli的prepare准备语句使用说明_MySQL

Jun 01, 2016 pm 01:23 PM
安全性 安定性 Webサイト ビュー

bitsCN.com

mysqli对prepare的支持对于大访问量的网站是很有好处的,它极大地降低了系统开销,而且保证了创建查询的稳定性和安全性。prepare准备语句分为绑定参数和绑定结果,下面将会一一介绍!
(1)绑定参数
看下面php代码:

//创建连接
$mysqli=new mysqli("localhost","root","","volunteer");
//检查连接是否被创建
if (mysqli_connect_errno()) {
printf("Connect failed: %s/n", mysqli_connect_error());
exit();
}
/*
* 创建一个准备查询语句:
* ?是个通配符,可以用在任何有文字的数据
* 相当于一个模板,也就是预备sql语句
*/
if ($stmt = $mysqli->prepare("insert into `vol_msg`(mid,content) values(?,?)")){
/*第一个参数是绑定类型,"s"是指一个字符串,也可以是"i",指的是int。也可以是"db",
* d代表双精度以及浮点类型,而b代表blob类型,第二个参数是变量
*/
$stmt->bind_param("is",$id,$content);
//给变量赋值
$id = "";
$content = "这是插入的内容";
//执行准备语句
$stmt->execute();
//显示插入的语句
echo "Row inserted".$stmt->affected_rows;
//下面还可以继续添加多条语句,不需要prepare预编译了
//关闭数据库的链接
$mysqli->close();
}
?>

以上php实例运行结果:
Row inserted:1
(2).绑定结果:绑定结果就是将你绑定的字段给php变量,以便必要时使用这些变量
请看下面的php代码:

//创建连接
$mysqli=new mysqli("localhost","root","","volunteer");
//设置mysqli编码
mysqli_query($mysqli,"SET NAMES utf8");
//检查连接是否被创建
if (mysqli_connect_errno()) {
printf("Connect failed: %s/n", mysqli_connect_error());
exit();
}
//创建准备语句
if ($stmt = $mysqli->prepare("select mid,content from `vol_msg`")){
//执行查询
$stmt->execute();
//为准备语句绑定实际变量
$stmt->bind_result($id,$content);
//显示绑定结果的变量
while($stmt->fetch()){
echo "第".$id."条: ".$content."
";
}
//关闭数据库的链接
$mysqli->close();
}
?>

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Golang 開発におけるセキュリティの課題: ウイルス作成に悪用されるのを避けるには? Golang 開発におけるセキュリティの課題: ウイルス作成に悪用されるのを避けるには? Mar 19, 2024 pm 12:39 PM

Golang 開発におけるセキュリティの課題: ウイルス作成に悪用されるのを避けるには?プログラミングの分野で Golang が広く応用されているため、さまざまな種類のアプリケーションの開発に Golang を使用する開発者が増えています。ただし、他のプログラミング言語と同様、Golang 開発にはセキュリティ上の課題があります。特に、Golang のパワーと柔軟性により、Golang は潜在的なウイルス作成ツールにもなります。この記事では、Golang 開発におけるセキュリティ問題を詳しく掘り下げ、G を回避する方法をいくつか紹介します。

Java 関数のメモリ管理技術とセキュリティの間にはどのような関係がありますか? Java 関数のメモリ管理技術とセキュリティの間にはどのような関係がありますか? May 02, 2024 pm 01:06 PM

Java のメモリ管理には、ガベージ コレクションと参照カウントを使用してメモリの割り当て、使用、再利用を行う自動メモリ管理が含まれます。効果的なメモリ管理は、バッファ オーバーフロー、ワイルド ポインタ、メモリ リークを防ぎ、プログラムの安全性を向上させるため、セキュリティにとって非常に重要です。たとえば、不要になったオブジェクトを適切に解放することでメモリ リークを回避でき、それによってプログラムのパフォーマンスが向上し、クラッシュを防ぐことができます。

Oracle のデフォルトアカウントパスワードのセキュリティ分析 Oracle のデフォルトアカウントパスワードのセキュリティ分析 Mar 09, 2024 pm 04:24 PM

Oracle データベースは一般的なリレーショナル データベース管理システムであり、多くの企業や組織が重要なデータの保存と管理に Oracle を選択しています。 Oracle データベースには、sys、system など、システムによって事前に設定されたデフォルトのアカウントとパスワードがいくつかあります。これらのアカウントには高い権限があり、悪意を持って悪用されると深刻なセキュリティ問題を引き起こす可能性があるため、管理者は日常のデータベース管理、運用および保守作業において、これらのデフォルト アカウント パスワードのセキュリティに注意を払う必要があります。この記事では、Oracle のデフォルトについて説明します。

安定したスケーラブルなシステムを構築するためのJava EJBアーキテクチャの詳細な説明 安定したスケーラブルなシステムを構築するためのJava EJBアーキテクチャの詳細な説明 Feb 21, 2024 pm 01:13 PM

EJBとは何ですか? EJB は、サーバー側のエンタープライズクラス Java アプリケーションを構築するためのコンポーネントのセットを定義する Java Platform, Enterprise Edition (JavaEE) 仕様です。 EJB コンポーネントはビジネス ロジックをカプセル化し、トランザクション、同時実行性、セキュリティ、その他のエンタープライズ レベルの懸念事項を処理するための一連のサービスを提供します。 EJB アーキテクチャ EJB アーキテクチャには、次の主要コンポーネントが含まれています。 Enterprise Bean: これは、EJB コンポーネントの基本的な構成要素であり、ビジネス ロジックと関連データをカプセル化します。 EnterpriseBean は、ステートレス (セッション Bean とも呼ばれます) またはステートフル (エンティティ Bean とも呼ばれます) にすることができます。セッション コンテキスト: セッション コンテキストは、セッション ID やクライアントなど、現在のクライアント インタラクションに関する情報を提供します。

キリン9000の性能は? キリン9000の性能は? Mar 22, 2024 pm 03:21 PM

Kirin 9000s は、注目を集めるフラッグシップ携帯電話として、発売以来幅広い話題と注目を集めてきました。 Kirin 9000シリーズの最新フラッグシップチップを搭載しており、そのパフォーマンスは非常に強力です。では、キリン9000の性能はどうなのでしょうか?一緒に調べてみましょう。まず、Kirin 9000s は新しい 5nm プロセスを使用して製造されており、チップのパフォーマンスと消費電力制御が大幅に向上しています。以前の Kirin プロセッサーと比較して、Kirin 9000 はパフォーマンスが大幅に向上しました。大規模なゲームの実行でも、マルチタスクでも、

php CodeIgniter に最適なプラグイン: Web サイトを次のレベルに引き上げます php CodeIgniter に最適なプラグイン: Web サイトを次のレベルに引き上げます Feb 19, 2024 pm 11:48 PM

CodeIgniter は強力な PHP フレームワークですが、機能を拡張するために追加機能が必要になる場合があります。プラグインはこれを実現するのに役立ちます。 Web サイトのパフォーマンスの向上からセキュリティの向上まで、さまざまな機能を提供できます。 1.HMVC (階層モデル ビュー コントローラー) Hmvc プラグインを使用すると、CodeIgniter で階層化された MVC アーキテクチャを使用できます。これは、複雑なビジネス ロジックを含む大規模なプロジェクトに役立ちます。 HMVC を使用すると、コントローラーをさまざまなモジュールに編成し、必要に応じてこれらのモジュールをロードおよびアンロードできます。デモ コード: //次のコードを config/routes.php に追加します: $route["/module/contr

Java フレームワークはエンタープライズ レベルのアプリケーションのセキュリティをどのように向上させますか? Java フレームワークはエンタープライズ レベルのアプリケーションのセキュリティをどのように向上させますか? Jun 04, 2024 pm 05:17 PM

Java フレームワークは、エンタープライズ レベルのアプリケーションに対して、入力検証、データ暗号化、セッション管理、アクセス制御、例外処理という 5 つのセキュリティ強化方法を提供します。入力検証ツール、暗号化メカニズム、セッション識別、アクセス制限、例外捕捉を通じて、アプリケーションを悪意のある脅威から保護します。

C++ コンテナ ライブラリのイテレータの安全性の保証 C++ コンテナ ライブラリのイテレータの安全性の保証 Jun 05, 2024 pm 04:07 PM

C++ コンテナ ライブラリは、イテレータの安全性を確保するための次のメカニズムを提供します: 1. コンテナの不変性の保証、 3. ループの範囲、 5. 例外の安全性。

See all articles