这里似乎有很多关于此的内容,但我找不到任何可以解决我遇到的问题。
我有一个MySQL数据库,我正在尝试使用各种嵌套查询,这对我来说是新的。我在ID字段上使用GROUP_CONCAT来返回查询返回的行的ID值列表。
在任何其他字段上使用它会返回一个很好的数据所需的数据,但在ID字段我得到了Gobbledegook!此ID字段上没有设置排序规则,因为dB不允许我这样做,字段是一个自动递增字段,类型设置为int(10),所以我想这就是原因。
我问我的网站主持人为什么我会收到gobbledegook,回复是:
“当转换为字符串时,ASP会对字符集进行假设.MySQL结果以UTF-8返回,而不是默认情况下假定的Windows-1521。”
所以,我开始搜索这个并在StackExchange上遇到这个问题; Classic ASP - How to convert a UTF-8 string to UCS-2?
我试过运行那里建议的功能,但它只是将gobbledegook变成了问号。返回的页面位于:http://hartnollguitars.co.uk/test_search.asp?search=gibson%2008
我在想,也许我正在使用该功能转换为错误的字符集,但我恐怕不知道如何确定我正在处理的是什么。
无论如何有助于显示这些结果将不胜感激。
SQL查询是:(简化)
results3.Open "SELECT * FROM (SELECT *, GROUP_CONCAT(id) as ItemList, count(id) as Variants FROM products WHERE item LIKE '%"& replace([searchterm]," ","%") &"%' GROUP BY item) AS UnknownVar LIMIT 40", conn, 3, &H0001
此处的输出示例:http://hartnollguitars.co.uk/test_search.asp?search=gibson%2008
答案 0 :(得分:0)
我正在接受另一次拍摄(之前的答案已删除)。请尝试将codepage指令添加到页面,并将META charset设置为UTF-8,如下所示。下面的代码应该发送并告诉浏览器将页面解释为UTF-8。
<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%><html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<% Response.Write... %>
</body>
</html>
希望这有帮助!