【问题标题】:How to insert emoij into mysql database with asp classic?如何使用 asp classic 将表情符号插入 mysql 数据库?
【发布时间】:2019-03-11 21:33:01
【问题描述】:

我正在尝试使用查询字符串将表情符号插入到我的 MySQL 数据库中,但我不知道我做错了什么?

我有一个设置为 utf8mb4 的 MySQL 数据库,我可以使用 Mysqlworkbench 将表情符号插入到表中,它显示为真正的表情符号。所以数据库正在正常工作。如果我只是尝试在 .asp 页面上显示它,那么我应该显示一个表情符号。 我把数据库、表、列都设置为utf8mb4_general_ci,是这样吗?

还有我的数据库连接(koppling.asp):

strConn = "driver={MySQL ODBC 5.2 Unicode Driver};server=localhost;uid=xxx;pwd=xxx;database=emojtest;option=3;charset=utf8mb4;" 
set conn = Server.CreateObject("ADODB.Connection")
conn.Open strConn 

到我的 insertemoji.asp 页面,我将像这样发送查询字符串/变量。

www.somepage.se/emojitest/insertemoji.asp?text=???????????????? 

我的 insertemoji.asp 看起来像这样。

<!--#include file="koppling.asp" -->
<% 
Response.charset="utf-8"

thetext = request.querystring("text")   


sql= "INSERT INTO news (text) VALUES ('"&thetext&"');"
conn.Execute (sql)
response.write thetext (this is showing 😜😀😊😃)
%>

但表情符号不会存储为表情符号,仅像 😜😀😊😃 这样,如果编码正确,我认为会是这样的 \xF0\x9F\x98\x82

那么我错过了什么?我哪里错了?

如果它应该像 \xF0\x9F\x98\x82 一样存储,那么当我在 .asp 页面上显示它时,如何将它转换/编码为真正的表情符号?

表情符号应该如何存储在数据库中?

  1. 它应该像一个可见的真实表情符号吗?

  2. 或者像这样ðŸ~œðŸ~€ðŸ~ŠðŸ~ƒ

  3. 或者像这样\xF0\x9F\x98\x82


已解决

我终于找到了问题所在,我使用了 MySQL ODBC 5.2 Unicode 驱动程序,当我更改为 MySQL ODBC 3.51 驱动程序时它工作了!

【问题讨论】:

  • 这是嵌入在 HTML 页面中的吗? HTML页面是否有&lt;meta charset="utf8" /&gt;
  • 它是一个 .asp 页面,我在其中设置了 Response.charset="utf8mb4"。
  • 您是在浏览器中打开您的 .asp 页面吗?然后它仍然是一个 HTML 文件。而utf8mb4 是mysql 特有的字符集。浏览器不理解。添加元标记
  • 所以应该是Response.charset="utf8"?我认为我需要将它作为 utf8mb4 吗?必须出去,一小时后回来。谢谢埃弗特
  • 埃弗特。如果我们从 db.我的数据库设置正确吗?它应该是列上的 utf8mb4_general_ci 还是应该是 utf8mb4_bin? db 和 table 和 bin 上的列应该是通用的吗?

标签: mysql emoji


【解决方案1】:

????,当 Mojibaked 时,变为😜😀😊😃。这是因为对十六进制 F09F989CF09F9880F09F988AF09F9883 的混淆,它在 utf8mb4 中被视为 Emoji,但被 latin1 视为胡言乱语。

要查看代码中可能出现的问题,请参阅Trouble with UTF-8 characters; what I see is not what I stored

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-07-05
    • 2016-07-16
    • 2020-08-21
    • 2013-07-10
    • 1970-01-01
    • 2013-02-21
    • 2020-05-04
    • 2021-10-03
    相关资源
    最近更新 更多