MySQL特殊字符问题

问题描述:

你好,我的mySQL查询和插入有问题。MySQL特殊字符问题

当会员在文本区域写下这些字符,如:

' " < > 

和其他一些.. 的MySQL将给出一个数据库错误。

我能做些什么来避免这种情况? 我认为这是PHP中的常见事物。

谢谢

使用mysql_real_escape_string()上的数据您尝试插入它之前。

这也将保护你免受SQL injection

+0

+1链接到小鲍比表卡通。 :-) – 2011-05-29 10:59:31

您需要将其插入到你的数据库之前逃脱你的输入。

mysql_real_escape_string()

http://php.net/manual/en/function.mysql-real-escape-string.php

枝迭戈,

可以使用mysql_real_escape_string逃避这些字符。 (htmlentities

希望这有助于你。

BR,

TJ

快速修复,逃逸是进入与mysql_real_escape_string将有助于应用程序的任何字符串。

要获得更好(甚至更快!)的解决方案,请使用mysqli并准备好语句 - 请参阅这个教程:http://www.dreamincode.net/forums/topic/54239-introduction-to-mysqli-and-prepared-statements/

你也可以使用php的addslashes()。

+0

加速度已知不足(并且已经*年*)。见例如这对于SQL注入尽管addslashes():http://shiflett.org/blog/2006/jan/addslashes-versus-mysql-real-escape-string – Piskvor 2011-05-29 14:00:04