当我从textarea插入值时,我的sql查询没有在'&'字符后插入数据。'&'所有字符都在数据库中更新。我正在使用mysql_real_escape_string()
函数。 这些特殊字符应该如何处理?&(&符号)字符未插入数据库
回答
你的php.ini中是否也启用了魔术引号?这可能会导致一些陷阱。
您可以通过在新的页面中运行该代码来检查它。
if(get_magic_quotes_gpc())
echo "Magic quotes are enabled";
else
echo "Magic quotes are disabled";
如果您启用了魔术引号,并尝试使用mysql_real_escape_string,则可以双重转义事物。其他要检查的内容:文本是否太长而无法放入适当的列中? MySQL截断数据以适应,而不是抛出太大的错误。
我在活服务器上工作。我无法修改php.ini文件。是另一种方式吗? – 2010-08-29 06:31:01
猜测不是一个好程序员应该依赖的东西 – 2010-08-29 06:40:03
mysql_real_escape_string()函数不能使用'&'字符? – 2010-08-29 06:42:13
不,与这个角色无关。
但是你一定要调试你的代码看看你的数据发生了什么。
通过追踪从textarea到数据库的整个路径。
很可能它甚至不存在于查询中。您最少打印此查询并检查它是否正确。如果没有 - 追溯。在脚本的各个位置打印textarea数据,以捕捉“&”号丢失的位置。
Probabaly值得确认你是用引号将字符串括起来。否则,我们将需要更多的细节!
错误:
UPDATE table SET value = & WHERE field = 'foo'
右:
UPDATE table SET value = '&' WHERE field = 'foo'
- 1. 将无符号字符数组插入数据库的问题
- 2. 在Oracle数据库中插入特殊字符'Mongoliantögrög'和符号'₮'
- 3. 在sql数据库中插入$符号
- 4. 拆分字符串插入数据库
- 5. 将字符插入到数据库中
- 6. 插入数据库时字符损坏
- 7. 如何插入逗号字符串的SQLite数据库
- 8. 插入数据库后,Unicode字符会成为问号
- 9. 插入项目符号和换行符到数据库中
- 10. 未插入数据库的字符串php
- 11. LINQ大字符串(64k)未插入SQL数据库
- 12. 撇号未插入SQL数据库
- 13. 设置插入符号的位置,其中插入符号未插入JTextArea
- 14. 像普通字符串插入SQL数据库的数据库?
- 15. 数字插入数据库,但不是字符或数字/字符
- 16. 插入符号
- 17. 更换插入符号字符的sed
- 18. 如何在数据库中插入通配符字符'
- 19. 插入符号数据拆分错误
- 20. 如何从oracle数据库到postgreSQL插入符号/字符(例如:'²'或其他语言符号)
- 21. 在C中插入字符串数据到数据库#
- 22. 插入查询未插入数据库
- 23. 插入rtf字符串时的RichTextBox插入符号位置
- 24. 符号插入到数据库中,但不能在PHP
- 25. 在Sqlite数据库中插入Unicode符号
- 26. 插入到mysql数据库与亚洲的符号,如“ -
- 27. 将千位分隔符逗号插入MySQL数据库
- 28. 使用符号(“),并在数据库连接字符串号(')
- 29. 插入符号“>”字符之间的字符串
- 30. 将unicode字符插入mysql数据库显示???????在字段
你能显示整个代码或至少几行哪里发生这种情况? – shamittomar 2010-08-29 06:33:41