mysql4.1特殊符号问题多多
███【陪同报名】███
因为上面的特殊符号黑色方格,
如果set names gb2312
则插入值全为空白。
如果 gbk
则黑色方格变成????
如果 utf8
则乱得根本就看不成了。
不知哪位同行解决过这样的问题,望不吝赐教。
在4.0以下则可以正常使用。
问题点数:20、回复次数:6Top
1 楼helloyou0(你好!)回复于 2006-03-13 07:00:01 得分 2
不用黑方格Top
2 楼gu1dai(异域苍穹.百年飞行)回复于 2006-03-13 08:55:02 得分 10
set names utf8前提是你的数据库编码为utf8格式,并且你的页面显示时charset=utf8
如果是软件查看乱码,我的建议是换phpmyadmin.设定字符集查看。Top
3 楼arcow(冲星)回复于 2006-03-13 09:25:52 得分 3
没这种问题Top
4 楼wildlily980(小李)回复于 2006-03-13 10:18:53 得分 0
回gu1dai:
我已经设定了数据库的编码格式为utf8
下面是程序,很简单
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf8"></head>
<?php
$link=mysql_connect("localhost","","") or die("connect
fail");
mysql_query("set names 'utf8'") or die("set fail");
mysql_select_db("test") or die("select fail");
mysql_query("ALTER DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE
utf8_general_ci") or die("alter fail");
mysql_query("create table if not exists test(theme varchar(40) not null)") or die
("query1 fail");
mysql_query("insert into test values(\"███【语课】███\")") or die("query
fail");
$result=mysql_query("select * from test") or die("query fail");
while($row=mysql_fetch_array($result))
echo $row[0];
mysql_close($link);
?>
</html>Top
5 楼xuzuning(唠叨)回复于 2006-03-13 10:30:38 得分 5
除非你的这个程序文件是用utf-8编码保存的,否则"███【语课】███"需要做编码转换!
Top
6 楼wildlily980(小李)回复于 2006-03-13 15:16:11 得分 0
把数据库字符集设为gbk,问题解决了。Top




