我认为如果有人想使用PHP和MySQL或其他数据库服务器:
考虑一下学习PDO(PHP数据对象)——它是一个数据库访问层,提供了访问多个数据库的统一方法。考虑学习MySQLi
库示例:
----个人数字助理
-----没有占位符-SQL注入时机成熟!这很糟糕
$request = $pdoConnection->("INSERT INTO parents (name, addr, city) values ($name, $addr, $city)");
-----未命名占位符
$request = $pdoConnection->("INSERT INTO parents (name, addr, city) values (?, ?, ?);
-----命名占位符
$request = $pdoConnection->("INSERT INTO parents (name, addr, city) value (:name, :addr, :city)");
---MySQLi
$request = $mysqliConnection->prepare('
SELECT * FROM trainers
WHERE name = ?
AND email = ?
AND last_login > ?');
$query->bind_param('first_param', 'second_param', $mail, time() - 3600);
$query->execute();
P.S:
PDO轻松赢得了这场战斗。支持12个不同的数据库驱动程序和命名参数,我们可以习惯它的API。从安全的角度来看,只要开发人员按照应该使用的方式使用它们,它们都是安全的