我可以在PDO SELECT期间“取消启用”吗?

时间:2017-05-27 08:30:35

标签: php mysql pdo sanitization

我正在编写客户端和服务器。用户在浏览器中输入数据,然后将数据发送到服务器上的PHP代码。

我在filter_input_array上使用$_GET[],并在“名称”字段中使用FILTER_SANITIZE_STRING

O'Reilly变为O'Reilly,并存储在数据库中。

当然,下次客户端提取数据并在浏览器中显示时,用户会抱怨。

当我SELECT使用PDO从MySql数据库中获取数据时,有没有办法“取消确定”?

1 个答案:

答案 0 :(得分:1)

在数据库中保存数据时,正确的方法是在使用数据时存储数据,这意味着“按原样”。然后,在显示数据时,您无需对数据执行任何操作。

您可以使用FILTER_FLAG_NO_ENCODE_QUOTES标志禁用字符串中“或”的编码。如果您想删除HTML标记,您也可以使用strip_tags()函数代替该值。< / p>

您始终希望在查询中使用参数,因为这有助于SQL注入问题,但是您是要删除标记,清理输入还是其他内容取决于您要对数据执行的操作。所以有时你只是使用参数,有时也会消毒。