我想让我的代码尽可能安全地免受任何类型的攻击,我希望对我在下面使用的简单代码有所了解。如果它易受攻击,如何使其更安全以及为什么会很棒的任何指示。我已经读过,使用准备好的语句是防止攻击的最佳实践。
<?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;
?>