當我從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