PHPはSQL注入防止を簡単に実現する方法
3364 ワード
この例では,PHPがSQL注入防止を簡単に実現する方法について述べる.皆さんの参考にしてください.具体的には以下の通りです.
方法1:execute代入パラメータ
方法2:bindParamバインドパラメータ
PHPに関する詳細について興味のある読者は、「phpプログラミングセキュリティチュートリアル」、「phpセキュリティフィルタリングテクニック総括」、「PHP演算と演算子用法総括」、「PHP基本文法入門チュートリアル」、「phpオブジェクト向けプログラム設計入門チュートリアル」、「php文字列(string)用法総括」、「php+mysqlデータベース操作入門チュートリアル」を参照してください.および「php一般データベース操作テクニック要約」
ここで述べたことが皆さんのPHPプログラム設計に役立つことを願っています.
方法1:execute代入パラメータ
$var_Value) {
// POST
$num = $num + 1;
}
// i id, j
for($i=0;$isetAttribute(PDO::ATTR_EMULATE_PREPARES, false);
// ID
// prepare() , , ? ,
$stmt = $pdo->prepare("select good_id from delphi_test_content WHERE good_id = ?");
// execute() , , , ,SQL 。
$stmt->execute(array($_POST[$i]));
//
$count = $stmt->rowCount();
// ID ,
if($count != 0)
{
$stmt = $pdo->prepare("update delphi_test_content set content = ? WHERE good_id = ?");
$stmt->execute(array($_POST[$j], $_POST[$i]));
}
// ID ,
if($count == 0)
{
$stmt = $pdo->prepare("insert into delphi_test_content (good_id,content) values (?,?)");
$stmt->execute(array($_POST[$i], $_POST[$j]));
}
}
}
$pdo = null;
//
}
?>
方法2:bindParamバインドパラメータ
$var_Value) {
// POST
$num = $num + 1;
}
// i id, j
for($i=0;$iprepare("select good_id from delphi_test_content WHERE good_id = ?");
$stmt->execute(array($_POST[$i]));
$stmt->bindParam(1,$_POST[$i]);
$stmt->execute();
//
$count = $stmt->rowCount();
// ID ,
if($count != 0)
{
$stmt = $pdo->prepare("update delphi_test_content set content = ? WHERE good_id = ?");
$stmt->execute(array($_POST[$j], $_POST[$i]));
$stmt->bindParam(1,$_POST[$j]);
$stmt->bindParam(2,$_POST[$i]);
$stmt->execute();
}
// ID ,
if($count == 0)
{
$stmt = $pdo->prepare("insert into delphi_test_content (good_id,content) values (?,?)");
$stmt->bindParam(1,$_POST[$i]);
$stmt->bindParam(2,$_POST[$j]);
$stmt->execute();
}
}
}
$pdo = null;
//
}
?>
PHPに関する詳細について興味のある読者は、「phpプログラミングセキュリティチュートリアル」、「phpセキュリティフィルタリングテクニック総括」、「PHP演算と演算子用法総括」、「PHP基本文法入門チュートリアル」、「phpオブジェクト向けプログラム設計入門チュートリアル」、「php文字列(string)用法総括」、「php+mysqlデータベース操作入門チュートリアル」を参照してください.および「php一般データベース操作テクニック要約」
ここで述べたことが皆さんのPHPプログラム設計に役立つことを願っています.