1

在 php.ini 中使用 PDO 时,何时使用准备和绑定,我有点困惑。

在下面的代码中,我应该改用 prepare 吗?如果我使用此代码,$name 会被转义,还是需要使用 mysql_real_escape_string?

$stmt = $db->query("UPDATE matches SET playerStatus = 4  WHERE name='$name' ");

谢谢

4

1 回答 1

2

我有点困惑什么时候走很长的路并使用准备和绑定

这是一种健壮、难以搞砸、易于阅读、易于维护的方法。不要认为它是“漫长的道路”。

在下面的代码中,我应该改用 prepare 吗?

是的。始终使用允许绑定参数的东西。

如果我使用此代码,$name 是否会被转义,

所写的问题中的代码不会逃逸$query。您只是将字符串混合在一起。数据库代码无法知道您编写的 SQL 是什么以及不安全的外部数据是什么。

还是我需要使用 mysql_real_escape_string?

您需要使用允许绑定参数的东西。

于 2012-05-08T10:09:09.283 回答