我经历了将mysql_ *代码转换为PDO代码的过程。我已经跑了,并检查它的工作原理和一切。我只是想要stackoverflow的审查,以确保我正确地杀死连接,我应该使用其他方法(例如交易),确保没有大规模的安全漏洞。这里的代码:PHP PDO访问mysql
<?php
try {
$link = new PDO('mysql:****;dbname=****;charset=UTF-8','****','****');
$link->exec("INSERT INTO Registration (`First Name`, `Last Name`) VALUES ('$_POST[fname]', '$_POST[lname]')");
} catch(PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
就像我说的,它的工作原理,但我希望它是安全和有效的,当100人同时注册。一切看起来好吗?
您应该使用绑定参数来生成SQL - 如果你只是在用户提供的输入增加,没有安全收益在所有使用PDO。 – andrewsi
您可以使用我的简单单文件[PDO库](https://github.com/Xeoncross/DByte),因此您不必担心SQL注入或在页面周围传递全局'$ link'变量。现在,由于您直接将变量插入查询字符串中,因此您并不安全。 – Xeoncross
请勿直接在查询中使用来自用户的未经过清理的数据。另外,当你使用一个数组变量时,在键上放置单引号或双引号。 – AdamGold