1
我有一些工作代碼,用於在pdo準備語句中手動將每個變量綁定到其參數的繁瑣操作。我循環訪問$_POST
數組,並根據html表單的名稱屬性動態地將變量綁定到params。從pdo預準備語句中的鍵值post數組循環bindParam
我的問題是,這樣做是否安全?我打開SQL注入?
這裏是我的代碼 -
if(!empty($_POST)){
try {
$conn = new PDO("mysql:host=$servername;dbname=$dbname;charset=utf8", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $conn->prepare("INSERT INTO planes (name, description) VALUES(:name, :description)");
foreach($_POST as $key => &$value){
$key = ':'.$key;
$stmt->bindParam($key, $value);
}
$stmt->execute();
}
catch(PDOException $e) {
echo "Error: " . $e->getMessage();
}
$conn = null;
}
你是什麼意思重新發明輪@catbadger我只是好奇的有用的見解。 –
我的意思是你可以使用提供這種功能的許多框架之一,而不是自己編寫它。 – catbadger