以下で使用している単純なコードについての洞察を期待していた、あらゆる種類の攻撃からコードを可能な限り安全にしたいと考えています。脆弱な場合に安全にする方法と、その理由についての指針は素晴らしいでしょう。プリペアド ステートメントを使用することが、攻撃から保護するためのベスト プラクティスであることを読みました。
<?php
try {
$conn = new PDO('mysql:host=localhost;dbname=test', 'user', 'XXXXX');
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare('INSERT INTO people (name, email) VALUES (:name, :email)');
$stmt->execute(array(':name' => $_POST['name'], ':email' => $_POST['email']));
#If one or more rows were returned...
} catch(PDOException $e){
echo'ERROR: ' . $e->getMessage();
}
echo "Added $_POST[name] with email $_POST[email] succsessfully";
$conn = null;
?>