繁体   English   中英

西里尔文的问题。 使用 AJAX、PHP 和 MySQL

[英]Problems with Cyrillic. Using AJAX, PHP and MySQL

我有一个带有这样参数的数据库:

character_set_client: utf8
character_set_connection: utf8
character_set_database: utf8
character_set_filesystem: binary
character_set_results:utf8
character_set_server: cp1251
character_set_system: utf8

我没有使用 JQuery。 我使用 AJAX 将数据放入数据库。 一切正常,直到我想从数据库中获取西里尔文数据。 我在浏览器中看到的是 而不是西里尔符号。 你能告诉我一个有问题的地方吗? 谢谢。

我会试着给你一个建议。 逐步检查所有内容,并且在执行任何操作之前不要忘记进行备份。

1) 将您的 character_set_server: cp1251 更改为 utf8。 您可以在 mysql 配置文件 my.cnf 中执行此操作。 当您更改它时 - 您必须重新启动 mysql。 添加以下内容:

[client]
default-character-set=utf8

[mysql]
default-character-set=utf8

[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

2)查看你的数据库。 里面的信息看起来没问题吗? 如果没有 - 检查您如何保存数据。

3)检查你的元数据。 它应该是这样的:

<head>
  <meta charset="utf-8">
  <title>Your title</title>
</head>

4)您可以通过php标头为您提供编码类型:

<?php
header('Content-Type: text/html; charset=utf-8');

此代码应出现在脚本中的任何输出之前。

5) 检查您的浏览器。 有时我忘记将编码从手动更改为自动。 或者您可以手动将其更改为 UTF-8。

希望,它会帮助你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM