デフォルトのモード -PDO::ERRMODE_SILENT を使用します (PDO で SQL ステートメントのエラーをキャプチャするための方法 1)
PDO で SQL ステートメントのエラーをキャプチャするには、3 つのオプションから選択できます。開発プロジェクトと実際の状況に応じて、SQL ステートメントのエラーをキャプチャするソリューションを提供します。
そして、前回の記事「PDOでSQL文を実行する3つの方法」、前3回の記事「PDOで結果セットを取得する - fetch()メソッド」でPDOでSQL文を実行する3つの方法を紹介しました。詳しい説明》《PDOで結果セットを取得するfetchAll()メソッドを詳しく説明》《PDOで結果セットを取得するfetchColumn()メソッドを詳しく説明》結果セットを取得する3つのメソッドを紹介します今日は、PDO で SQL ステートメントのエラーをキャプチャするいくつかの方法を紹介します~!
今日はデフォルトモードPDO::ERRMODE_SILENTの使い方を紹介します。
PDOStatement オブジェクトの errorCode データをデフォルト モードで設定しますが、他の操作は実行しません。
以下では、例を使用してデフォルト モード PDO::ERRMODE_SILENT の具体的な使用方法を紹介します。具体的な手順は次のとおりです:
まず、php ファイルを作成し、フォームを追加し、このページにフォーム要素を送信して、に接続します。 PDO を介して MySQL データベースにアクセスし、プリペアド ステートメントの prepare() メソッドとexecute() メソッドは INSERT 追加操作を実行し、データ テーブルにデータを追加し、コード内のエラーを検出するために PDOStatement オブジェクトの errorCode 属性を設定します。具体的なコードは次のとおりです:
<form action="1.php" name="form1" method="post"> 用户名:<input type="text" name="username"> 密码: <input type="password" name="password"> <input type="submit" name="Submit" value="提交"> </form> <?php header("Content-Type:text/html; charset=utf-8"); //设置页面的编码格式 if($_POST['username']&&$_POST['password']!=""){ $name = $_POST['username']; $password = $_POST['password']; $dbms = "mysql"; // 数据库的类型 $dbName ="php_cn"; //使用的数据库名称 $user = "root"; //使用的数据库用户名 $pwd = "root"; //使用的数据库密码 $host = "localhost"; //使用的主机名称 $dsn = "$dbms:host=$host;dbname=$dbName"; $pdo=new PDO($dsn,$user,$pwd);//初始化一个PDO对象,就是创建了数据库连接对象$pdo $query="insert into `user_12`(username,password) VALUES ('$name','$password')";//需要执行的sql语句 $res=$pdo->prepare($query);//准备查询语句 $res->execute(); //执行查询语句,并返回结果集 $code =$res->errorCode(); if(empty($code)){ echo "数据添加成功"; }else{ echo "数据错误:<br>"; echo 'SQL Query:'.$query; echo '<pre class="brush:php;toolbar:false">'; var_dump($res->errorInfo()); echo ''; } } ?>
注:
上記のコードでは、INSERT ステートメントを定義するときに、意図的に間違ったデータ テーブル名 user_12 を使用しました (正しいデータ テーブル名は user)。これはテスト用に書かれたものです。
エラー出力結果は次のとおりです:
次に、PDO の SQL ステートメントでエラー メソッドをキャプチャするデフォルトのモード PDOERRMODE_SILENT を使用する方法を紹介します。 SQL ステートメントのエラー メソッドについては、「警告モードを使用する - PDO::ERRMODE_WARNING (PDO で SQL ステートメントのエラーをキャプチャする 2 番目の方法)」を参照してください。
以上がデフォルトのモード -PDO::ERRMODE_SILENT を使用します (PDO の SQL ステートメントのエラーをキャプチャする方法 1)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。