相关疑难解决方法(0)

如何将来自Web服务的重音字符存储到数据库中?

我通过网络服务获取以下字样:André

从Python,值看起来像:"Andr\u00c3\u00a9".然后使用json.loads以下方法解码输入:

>>> import json
>>> json.loads('{"name":"Andr\\u00c3\\u00a9"}')
>>> {u'name': u'Andr\xc3\xa9'}
Run Code Online (Sandbox Code Playgroud)

当我将上述内容存储在utf8 MySQL数据库中时,使用Django将数据存储如下:

SomeObject.objects.create(name=u'Andr\xc3\xa9')
Run Code Online (Sandbox Code Playgroud)

从mysql shell查询name列或在网页中显示它给出: André

网页显示在utf8中:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
Run Code Online (Sandbox Code Playgroud)

我的数据库在utf8中配置:

mysql> SHOW VARIABLES LIKE 'collation%';
+----------------------+-----------------+
| Variable_name        | Value           |
+----------------------+-----------------+
| collation_connection | utf8_general_ci | 
| collation_database   | utf8_unicode_ci | 
| collation_server     | utf8_unicode_ci | 
+----------------------+-----------------+
3 rows in set (0.00 sec)

mysql> SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------+
| Variable_name            | Value                      |
+--------------------------+----------------------------+
| character_set_client     | utf8                       | 
| character_set_connection | utf8 …
Run Code Online (Sandbox Code Playgroud)

python mysql django

4
推荐指数
1
解决办法
2470
查看次数

PHP MySQL utf 8编码

我试图对一个从我的数据库中提取数据的PHP函数进行Ajax调用.我遇到了一个问题.

我的查询看起来像这样

$query = "SELECT * FROM mytable WHERE field LIKE '%$string%'"
Run Code Online (Sandbox Code Playgroud)

然后我检查查询返回的行数,但是当我输入æøå然后我的查询返回0行,虽然我知道数据库中有条目有æøå..为什么这是

php mysql utf-8

4
推荐指数
1
解决办法
1万
查看次数

PHP\uXXXX编码的字符串转换为utf-8

我有这样的字符串

\u041d\u0418\u041a\u041e\u041b\u0410\u0415\u0412
Run Code Online (Sandbox Code Playgroud)

如何将其转换为utf-8编码?什么是给定字符串的编码?感谢您的参与!

php encoding utf-8

4
推荐指数
1
解决办法
3697
查看次数

如何在php和mysql数据库中正确编码字符

可能重复:
UTF-8一直通过

搜索高和低的解决方案.在发布问题之前,我尝试了很多变化.

在phpMyAdmin和html页面中,名称显示相同所需的内容是什么?这甚至可以实现吗?

编辑1:这似乎是一个mysql问题.为什么?因为php生成的html页面总会显示正确的字符.此时,只有数据库显示不正确.

编辑2:澄清.使用下面的代码片段和图片中显示的原始设置,

  1. 输入João并提交
  2. João显示在数据库中
  3. João重装后显示

添加 mysqli_query ( $link, 'SET NAMES utf8' )

  1. 输入João并提交
  2. João显示在数据库中
  3. Jo reo重装后显示

结束编辑2

在mysql数据库中,使用phpMyAdmin查看: 数据库结构

这些项目出现在数据库中,如下所示:(我修改了第一个João​​,使其在数据库中显示正确)

phpMyAdmin查看2个同名条目

在带有编码设置的html页面中,名称显示为(顺序颠倒和修改后有黑色菱形),

在html页面中出现

编码方式: <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

我已经尝试将列排序规则更改为utf8_bin,utf8_general_ci,utf8_unicode_ci,所有这些都没有任何变化.还将文档(BBEdit)从UTF-8更改为UTF-8(带BOM),ISO拉丁文1和Windows拉丁文1.其中一些创建了更多的黑色钻石,使问题更加严重.(在图像中设置为UTF-8)我甚至试图使用编码的等价物preg_replaceã,éetc.

简短的故事是,João在页面上输入(上面的内容类型),João在数据库中,João在刷新时进入html页面.

寻找想法.谢谢.

php mysql phpmyadmin character-encoding

4
推荐指数
1
解决办法
3485
查看次数

插入阿拉伯语文本MySQL

我正在尝试将阿拉伯文本存储到表格中,我搜索了很多,但我没有找到适合我的解决方案,所以这就是我得到的:

$en = "OK";
$ar = "?????";
$link->query("INSERT INTO words (en,ar) VALUES ($en,$ar)");
Run Code Online (Sandbox Code Playgroud)

问题是当我插入它时,阿拉伯文本看起来像حسناً我的表格整理和MySQL utf8_general_ci,我的数据库也是如此,我也有mysql_query("SET NAMES 'utf8'"); mysql_query('SET CHARACTER SET utf8');,但它不起作用.

php mysql arabic

4
推荐指数
1
解决办法
4165
查看次数

MySQL和Phalcon PHP中的UTF8字符问题

我在Phalcon PHP和MySql中有一个项目。

当必须保留UTF8字符时,将存储这些错误。

例如:我在数据库中保存:nuevadescripciónñññ:nuevadescipciónñññ

我已经在数据库,表和字段中尝试了几种类型的排序规则。

谢谢你的帮助。

php mysql utf-8 phalcon

4
推荐指数
1
解决办法
1396
查看次数

如何在 PHP 中将“é”转换为“é”?

我正在尝试将以下字符串转换为: \xe2\x80\x9c\xc3\x83\xc2\xa9\xe2\x80\x9d 到: \xe2\x80\x9c\xc3\xa9\xe2\x80\x9d 。这是一个 latin1 字符,但我无法正确执行。到目前为止,我已经尝试了两个函数,但它们都没有给我正确的输出。

\n\n
$translation = 'Cop\xc3\x83 \xc2\xa9 rnico was Italian';\n$translation = mb_convert_encoding($translation, 'utf-8', 'iso-8859-1'); //opt 1\n$translation = iconv('utf-8', 'latin1', $translation); //opt 2\n
Run Code Online (Sandbox Code Playgroud)\n\n

我从 Api 获取这些数据,所以我不知道数据库中发生了什么。\n这是西班牙语字符串:Cop\xc3\xa9rnico es italiano。\n这是来自 API 的数据:Cop\xc3\x83 \xc2\xa9 rnico 是意大利语\n这是 $translation = bin2hex($translation);\n436f70c38320c2a920726e69636f206973204974616c69616e 的结果

\n\n

正确的做法是什么?问候。

\n

php encoding

4
推荐指数
1
解决办法
4573
查看次数

TinyMCE UTF-8保存到MySQL数据库

我将TinyMCE输入发送到POST(一个php文件),然后将其保存在MySQL数据库中.

输入具有UTF-8(土耳其语字符).因此,当我输入TürkçeTinyMCE输入并将其发送到post时,PHP后端会收到此字符串:

<p>T&uuml;rk&ccedil;e</p>
Run Code Online (Sandbox Code Playgroud)

如何将其转换回来,Türkçe以便我可以在MySQL中正确保存?

PS:

MySQL设置为utf8_unicode_ci排序规则,因此可以正确保存UTF-8字符.

我想我需要用PHP转换它们.

或者TinyMCE正确发送它们的方法?

谢谢你的帮助 !

PS 2:

我认为这个问题是关于TinyMCE本身的,所以我想解决方案是转换TinyMCE输出(在TinyMCE javascript或接收PHP脚本中).

即:我不认为改变我的PHP配置是解决方案.

PS 3

我想这些字符就像&uuml;土耳其字符的HTML等价物一样,所以htmlspecialchars_decode()应该可以使用,但它不接受土耳其字符.也许是一种htmlspecialchars_decode解码UTF-8字符的方法?

php mysql tinymce utf-8 character-encoding

3
推荐指数
1
解决办法
1万
查看次数

如何解码收到的电子邮件的主题行的UTF8字符集

在PHP中使用IMAP电子邮件标头时,我遇到了与主题行编码相关的问题.当我尝试mb_decode_mimeheader(根据重复的问题)然后我没有得到理想的结果:

$subject = "=?UTF-8?Q?=e2=99=a3?= Your winning day =?UTF-8?Q?=e2=99=a3?=";
echo mb_decode_mimeheader($subject);
Run Code Online (Sandbox Code Playgroud)

输出:

? Your winning day ?
Run Code Online (Sandbox Code Playgroud)

php

3
推荐指数
1
解决办法
2386
查看次数

编码问题.我哪里错了?

我正在尝试从我的服务器传递数据并将其显示在UWP Windows应用程序中.数据存储在mySQL数据库中

在此输入图像描述 在此输入图像描述

这是通过PHP输出到这里的网页http://www.rwscripts.com/scorealerts/v3/request.php?action=getTeams使用此代码

// Serialize the data structure   
    $result = json_encode($data,JSON_PRETTY_PRINT);
    // Display the XML document   
    header('Content-type: application/json; charset=utf-8'); 

    print $result;
Run Code Online (Sandbox Code Playgroud)

然后我在我的应用程序中使用HttpWebRequest读取它,然后使用JSON.net反序列化JSON

            JArray obj = JsonConvert.DeserializeObject(str.Trim()) as JArray;
            if (obj == null || obj.Count == 0) return;

            foreach (NotificationTeam nt in from JObject team in obj
                select
                    new NotificationTeam
                    {
                        Title = team.Value<string>("teamName"),
                        TeamID = team.Value<int>("tid"),
                        Followers = team.Value<int>("followers")
                    })
            {
                nt.Notifications = ScoreManager.GetMgr().GetTeamNotification(nt.TeamID);

                notificationTeams.Add(nt);
            }
Run Code Online (Sandbox Code Playgroud)

在我的应用程序中显示的输出是这样的

在此输入图像描述

需要更改流的哪一部分才能正确显示unicode字符?

php c# mysql json.net uwp

3
推荐指数
1
解决办法
860
查看次数