mysql_real_escape_string如何工作?它是否删除mysql函数或在mysql函数之间添加//?它比addslashes更好吗
答案 0 :(得分:4)
mysql_real_escape_string()调用MySQL的库函数mysql_real_escape_string,该函数将反斜杠添加到以下字符:\ x00,\ n,\ r,\,',“和\ x1a。
在向MySQL发送查询之前,必须始终使用此函数(少数例外)使数据安全。
IMO,在大多数情况下,使用此功能比尝试重新创建更好。
答案 1 :(得分:0)
在清理数据库输入时,除非使用较新的PDO库,否则应始终使用mysql_real_escape_string
而不是addslashes
和其他非本机PHP 函数。
mysql_real_escape_string()调用MySQL的库函数mysql_real_escape_string,该函数将反斜杠添加到以下字符:\ x00,\ n,\ r,\,',“和\ x1a。
来源@ http://php.net/manual/en/function.mysql-real-escape-string.php
您还应该知道PHP提供了一个名为 PDO 的本机库,它是一个管理数据库清理的类,因此您不必担心太多。
预备语句由数据库服务本身处理,这提高了所有语句的安全性和性能。
如果您希望实现准备好的语句,则需要学习和合并PDO是另一个本机数据库抽象层。
实施PDO Click here
要详细了解准备好的陈述Click Here