PHP での SQL 変数のバインド: PDO による救済
PHP では、SQL 変数を使用することが SQL インジェクションを回避する安全かつ効率的な方法です脆弱性を除去し、クエリの実行を簡素化します。 MySQL と PostgreSQL の両方で PDO (PHP Data Objects) ライブラリを使用して変数をバインドする方法を見てみましょう。
MySQL
PDO を使用して MySQL で変数をバインドするには、次の手順に従います。手順:
PDO 接続の作成:
<code class="php">$dbh = new PDO('mysql:host=localhost;dbname=database', 'username', 'password');</code>
パラメータ化されたクエリの準備:
<code class="php">$stmt = $dbh->prepare('SELECT * FROM users WHERE username = :username');</code>
変数をプレースホルダーにバインドします:
<code class="php">$stmt->bindParam(':username', $username);</code>
クエリを実行します:
<code class="php">$stmt->execute();</code>
PostgreSQL
PDO を使用した PostgreSQL のバインド変数は MySQL に似ています:
PDO 接続を作成します:
<code class="php">$dbh = new PDO('pgsql:host=localhost;dbname=database', 'username', 'password');</code>
パラメータ化されたクエリを準備します:
<code class="php">$stmt = $dbh->prepare('SELECT * FROM users WHERE username = ');</code>
変数をプレースホルダーにバインドします:
<code class="php">$stmt->bindParam(1, $username);</code>
クエリを実行します:
<code class="php">$stmt->execute();</code>
PDO を使用する利点
PDO を使用すると、次のような利点があります。
PDO を PHP アプリケーションに組み込むことで、セキュリティを向上させ、パフォーマンスを向上させ、バインドされた変数を使用して SQL クエリを実行するプロセスを簡素化します。
以上がPDO を使用して MySQL と PostgreSQL の変数をバインドし、安全で効率的なクエリを実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。