ホームページ >バックエンド開発 >PHPチュートリアル >SQL インジェクションを防ぐための 3 つの PHP 関数と 2 つのオプション
1.addslashes($string): バックスラッシュを使用して文字列 ' " \ 内の特殊文字を引用します。
$username=addslashes($username);
2. mysql_escape_string($string): mysql_query() クエリの文字列内の特殊文字をエスケープするには、バックスラッシュを使用します。
$username=mysql_escape_string($username);
3. mysql_real_escape_string( $string): SQL ステートメントで使用される文字列内の特殊文字をエスケープします。接続の現在の文字セットを考慮して、この関数を使用する前に現在の接続状態を使用できることを確認する必要があります。そうでない場合は、警告が表示されます。 % と __
$username=mysql_real_escape_string($username);
1。PDO
$stmt = $pdo->prepare('SELECT * FROM user WHERE name = :name'); $stmt->execute(array(':name' => $name)); foreach ($stmt as $row) { // do something with $row }
2 を使用します。 mysqli を使用します
$stmt = $dbConnection->prepare('SELECT * FROM user WHERE name = ?'); $stmt->bind_param('s', $name); $stmt->execute(); $result = $stmt->get_result(); while ($row = $result->fetch_assoc()) { // do something with $row }
PHP 関連の詳細については、PHP 中国語 Web サイト!
を参照してください。以上がSQL インジェクションを防ぐための 3 つの PHP 関数と 2 つのオプションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。