这是关于PHP,Mysql和Html的textarea。
我想将用户输入从html的textarea转储到我的mysql数据库中。情况是,如果用户在文本本身中有分号,mysql将拒绝插入命令,原因很明显。我想知道的是,有没有办法强制mysql接受用户的输入,无论其语法如何?
事先得到很多赞赏:)
答案 0 :(得分:3)
您需要转义任何SQL特殊字符,例如分号。 mysql_real_escape_string可能有用。
如果将用户输入发送回浏览器,请不要忘记撤消用户输入,否则您将容易受到XSS(跨站点脚本)攻击。当然,这次你需要转义HTML特殊字符,而不是SQL。
答案 1 :(得分:0)
在插入MySQL之前,应使用php函数“mysql_real_escape_string”对任何文本字段进行转义:
http://us2.php.net/manual/en/function.mysql-real-escape-string.php
答案 2 :(得分:0)
上面的答案是正确的,但是为了补充他说的话,你可以使用strip_tags()
来清理输出以避免XSS。