我有一个旧脚本,只需将两组值插入数据库即可。 我被告知有更新的更好的方法来做到这一点,而不是我在下面使用的,有人能告诉我需要改变什么吗?
mysql_connect("server","user","password");
mysql_select_db("database");
$datainsert = "INSERT INTO form1
(name, message)
VALUES
('$name',
'$message_body')";
$result = mysql_query($datainsert);
if($result){
header('Location: success.html');
} else{
echo("<br>There was a problem.");
}
答案 0 :(得分:1)
用mysqli或pdo替换mysqL。
答案 1 :(得分:1)
最安全的方法是:
$mysqli = new mysqli("server","user","password", "database");
$stmt = $mysqli->prepare("INSERT INTO form1 (name, message) VALUES (?, ?)");
$stmt->bind_param('ss', $name, $message_body);
$stmt -> execute();
if($stmt) {
header('Location: success.html');
} else {
echo("<br>There was a problem.");
}
它使用MySQL Improved,它使用预处理语句(不可能进行SQL注入)。
答案 2 :(得分:0)
只需从mysql_*
切换到mysqli_*
答案 3 :(得分:0)
最接近现有代码的方法是使用mysqli_ *
但是 请不要只添加 我 并认为您的问题已经解决。使用预先准备好的陈述,请查看此link