问题是,当你构建一个SQL查询时,通过查找变量来防止注入为时已晚 – 否则它已经内置到PHP中.
在构建查询时,需要更早地进行转义.您可以使用查询构建类.
我将通过一些例子说明这一点;这里整洁的东西是迭代器,因为你可以抽象出更多,并在线上提供一些非常通用的类来提取数据.
使用上述方法创建用户记录:
$user = new DbUser();
$user->create();
$user->set_email('test@example.com');
$user->write();
要读取用户记录:
$user = new DbUser();
$user->set_email('text@example.com');
if ($user->load_from_fields())
{
}
迭代记录:
$user_iterator = DbUser::begin();
if ($user_iterator->begin())
{
do
{
$user = $user_iterator->current();
echo $user->get_email();
} while ($user_iterator->next());
}