为什么PHP向MySQL中插入中文后,在MySQL和网页上显示的都是?????啊?跪求大仙帮忙!!!!

serven_zhang 2011-09-08 07:10:39
向MySQL中写入数据的文件如下:
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<?php

$sServer="127.0.0.1:3306";
$sUserName="root";
$sPassword="zhangyuanming";
$sDBName="chardb";

mysql_query("set names 'gb2312'");

$dbLink=@mysql_connect($sServer,$sUserName,$sPassword);
if($dbLink==null){
echo "打开数据库失败<br>";
exit();
}

$bResult=mysql_select_db($sDBName,$dbLink);
if($bResult==true){
$sName="赵六";
$sSex="女";
$sBirthday="1991-6-8";
$sAddress="杭州市下城区";

$sSQL="insert into student(name,sex,birthday,address) values ('{$sName}','$sSex','$sBirthday','$sAddress')";

$bRes=mysql_query($sSQL,$dbLink);

if($bRes==true){
echo "已经成功插入一条数据<br>";
}else{
echo "插入数据失败<br>";
}
}

@mysql_close($dbLink);
?>


为什么我在使用以上代码向MySQL中插入数据后,在MySQL中使用select * from student;查询后出来的都是乱码啊,跪求大仙帮忙解决以下,这个问题已经困扰我很多天了,还有MySQL的配置文件my.ini我已经改为:

[client]
default-character-set = gb2312

[mysql]
default-character-set = gb2312

[mysqld]
default-character-set = gb2312

还有我使用的输出文件如下

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<?php
$sServer="127.0.0.1:3306";
$sUserName="root";
$sPassword="zhangyuanming";
$sDBName="chardb";


$dbLink=@mysql_connect($sServer,$sUserName,$sPassword);
mysql_query("set names 'gb2312'");
if($dbLink==null){
echo '打开数据库失败<br>';
exit();
}

$bResult=mysql_select_db($sDBName,$dbLink);
if($bResult==TRUE){
$sSQL="select name,birthday,address from student";
$result=mysql_query($sSQL,$dbLink);

while($resObject=mysql_fetch_object($result)){
echo "<h1>"."name is ".$resObject->name. " and birthday is ".$resObject->birthday." and address is ".$resObject->address."</h1> "." <br>";
}
mysql_free_result($result);
}
@mysql_close($dbLink);
?>


跪求大仙帮忙,让网页上显示的?????变为我所插入的中文吧……小弟在此先谢过了!!!
...全文
256 12 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
pusongbailalala 2011-09-10
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 moocky 的回复:]
mysql_query("set names 'gb2312'");
推荐使用
mysql_set_charset

另将移动mysql_query("set names 'gb2312'");到$bResult=mysql_select_db($sDBName,$dbLink);之下:
$bResult=mysql_select_db($sDBName,$dbLink);
mysql……
[/Quote]

这个也应该是正解、、、、、
An4Greenhand 2011-09-10
  • 打赏
  • 举报
回复
统一编码啊 都弄成utf-8
CredoChen 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zmzkkk 的回复:]

读之前加一个,mysql_query("SET NAMES gbk")
[/Quote]
正解!
伴老思源 2011-09-09
  • 打赏
  • 举报
回复
字符编码问题~

最好的办法,php设置为UTF-8,在装MySQL时也选择UTF-8
冰糖710 2011-09-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 zmzkkk 的回复:]
读之前加一个,mysql_query("SET NAMES gbk")
[/Quote]

+1
zmzkkk 2011-09-09
  • 打赏
  • 举报
回复
读之前加一个,mysql_query("SET NAMES gbk")
木目子 2011-09-09
  • 打赏
  • 举报
回复
mysql_query("set names 'gb2312'");
推荐使用
mysql_set_charset

另将移动mysql_query("set names 'gb2312'");到$bResult=mysql_select_db($sDBName,$dbLink);之下:
$bResult=mysql_select_db($sDBName,$dbLink);
mysql_set_charset("set names 'gb2312'");
//mysql_query("set names 'gb2312'"); //mysql_real_escape_string不能被应用

保证你的表的编码也是gb2312的
黄袍披身 2011-09-08
  • 打赏
  • 举报
回复
你是想用哪种编码呢?gbk? utf-8? 如果是要用gb2312 or gbk 那么就一定要把数据库的编码弄成gbk gb2312的格式.你看你现在数据库的是 utf8格式不是..表也是...
serven_zhang 2011-09-08
  • 打赏
  • 举报
回复
麻烦1楼在给小弟讲清楚点好吗,小弟刚刚起步,不是很懂,数据库和表的信息如下
Connection id: 5
Current database: chardb
Current user: root@localhost
SSL: Not in use
Using delimiter: ;
Server version: 5.0.51b-communi
Protocol version: 10
Connection: localhost via T
Server characterset: utf8
Db characterset: utf8
Client characterset: gb2312
Conn. characterset: gb2312
TCP port: 3306
Uptime: 52 min 26 sec


编码上应该没问题了吧,还有我用的是VIM请问我该怎么修改程序的编码方式啊!!!谢谢啊……
Abdiweli 2011-09-08
  • 打赏
  • 举报
回复
1楼正解!
一起混吧 2011-09-08
  • 打赏
  • 举报
回复
你的数据库和表也要改为gb2312
还有你的程序编码也要为gb2312,这个用你的编辑器改改。
内容概要:本文介绍了DeepSeek在职场的应用,从提示语技巧到多场景应用,涵盖了DeepSeek的基础模型(V3)、深度思考模型(R1)及其联网搜索功能。文详细描述了DeepSeek的模型对比,包括操作规范、结果导向、路径灵活性、响应模式和风险特征等方面。此外,还探讨了DeepSeek在制作可视化图表、PPT、海报、视频以及批量生成新媒体文案等具体应用场景的使用方法和技巧。最后,文章展示了DeepSeek在市场调查、AI应用开发等方面的应用实例,强调了其在人机协同和共生领域的潜力。 适用人群:适用于希望提升工作效率和创新能力的职场人士,特别是从事数据分析、内容创作、市场营销、AI开发等领域的专业人士。 使用场景及目标:①通过DeepSeek的基础模型(V3)和深度思考模型(R1)进行高效的任务处理和复杂推理;②利用DeepSeek制作可视化图表、PPT、海报和视频,提高内容创作的质量和效率;③通过DeepSeek进行市场调查和AI应用开发,优化业务流程并推动创新。 其他说明:DeepSeek不仅提供了强大的AI工具,还强调了人机协同的重要性。用户在使用过程应注意操作规范,结合实际需求选择合适的模型,并充分利用DeepSeek的各项功能来实现高效的职场应用。文还提到了多个国际竞赛的获奖情况,展示了DeepSeek团队在AI领域的卓越实力。

21,893

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧