日期:2014-05-16  浏览次数:20934 次

从数据库总读取数据时候,?变成&是怎么回事
我把如下数据存入数据库,

hi8N9h?&path=&type=none&name=水漫金山第1片.mp3
eqyw4v/?name=水漫金山第2片.mp3

结果用同样的方法从数据库中读取数据,确实如下的:
http://m.qy628.com/index.php/hi8N9h&&path=&type=none&name=%E6%B0%B4%E6%BC%AB%E9%87%91%E5%B1%B1%E7%AC%AC1%E7%89%87.mp3
http://m.qy628.com/index.php/eqyw4v/?name=水漫金山第2片.mp3

网页编码是utf-8

第二条数据读出是正确,可是第一条里的汉字怎么变成了代码?另外更为不解的是第一条的“hi8N9h?&path=”怎么变成了“hi8N9h&&path=”,就是?也变成&。

我反复的查看了数据库,数据库中确实是?,但是读出来后就变成了&。
------解决方案--------------------
编码换成GB2312试试??
------解决方案--------------------
hi8N9h?&path=&type=none&name=水漫金山第1片.mp3

http://m.qy628.com/index.php/hi8N9h&&path=&type=none&name=%E6%B0%B4%E6%BC%AB%E9%87%91%E5%B1%B1%E7%AC%AC1%E7%89%87.mp3

麻烦你,仔细看看你这个字符串的结构,你看看错在哪里
------解决方案--------------------
估计是代码的问题,网页编码有问题。
------解决方案--------------------
通過網頁提交數據時如果是採用GET提交會轉換編碼,同樣使用轉換編碼可以保證數據能順利提交有中文時不會出現亂碼。只要使用request.Form就可以獲取提交時的文本,或者進行編碼轉換。