向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);
?>
跪求大仙帮忙,让网页上显示的?????变为我所插入的中文吧……小弟在此先谢过了!!!
<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);
?>
跪求大仙帮忙,让网页上显示的?????变为我所插入的中文吧……小弟在此先谢过了!!!
解决方案 »
- IE中用php代码如何向object 的 param 的 value 中传值啊
- asp.net和php哪个更好学,哪个更有前途,如果从一般水平的人来讲,两者的薪资待遇差距大不大
- 一直不知道这四条mysql有啥区别?望高手指教
- php语法问题:字符串可以用单引号也可以用双引号,什么区别?
- 求一正则,写了一天了,郁闷中
- php处理excel表格的问题
- 关于获取数据和提交的问题
- 关于session 急,请指教!
- 我的mysql问题
- 关于mysql和sql server 2000数据库数据同步的问题,来大神给个思路,谢谢
- 中文用户名登陆有误,字符编码问题,怎么弄?
- 求助:写入水印时利用imagejpeg()函数读出图像时出现乱码
还有你的程序编码也要为gb2312,这个用你的编辑器改改。
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请问我该怎么修改程序的编码方式啊!!!谢谢啊……
推荐使用
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的