在两台计算机的HTML文件中显示数据库的结果时出现问题。
因此,在一台计算机上它显示的名称是这样的:
SAUL FRANCISCO GARCÃA RODRÃGUEZ
数据库latin1_swedish_ci的排序规则为,表的排序规则为utf8_general_ci。
latin1_swedish_ci
utf8_general_ci
在另一台计算机上,它显示如下(我希望这样):
SAUL FRANCISCO GARCÍA RODRÍGUEZ
名称在<select>标签中列出。两种浏览器的语言是英语,并且Html文件在两种环境下都相同,所以我认为这与php.ini文件的字符集或编码有关
<select>
我曾尝试更改中的值,php.ini但没有任何变化,我在任何地方都找不到答案。
php.ini
唯一的区别是,按我希望的方式显示结果,我安装了WAMP,在另一台计算机上分别安装了Apache,MySQL和PHP。
抱歉,如果详细信息不是很实用,但是我不知道我要去哪里错了。
PS在两个数据库上,MySQL控制台中的数据如下所示:
php.ini在这种情况下,编辑无济于事。
数据库的数据整理给您带来了什么问题?默认情况下,大多数MySQL安装集latin1_swedish_ci而不是utf8_general_ci新创建的数据库。
更改数据库的排序规则,然后重试。
ALTER DATABASE [name of your database] CHARACTER SET utf8;
如果这是一个特定的表,则排序规则可以更改为:
ALTER TABLE [name of your table] CONVERT TO CHARACTER SET utf8;
如果它是表中的特定列:
ALTER TABLE [name of your table] MODIFY [name of your column] [other settings] CHARACTER SET utf8 COLLATE utf8_general_ci;
或者,您可以导出当前数据库,使用此命令创建新数据库并重新导入数据:
CREATE DATABASE [name of your database] CHARACTER SET utf8 COLLATE utf8_general_ci;
而且,如果您要永久更改在计算机上安装的MySQL,从而导致出现问题,请进行编辑my.cnf。下面将把整个链设置为UTF-8:
my.cnf
[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