php中文登录

用php登录网页,发现用英文用户名可以登录。用中文的不能登录。。。求救代码如下:<?phpheader('Content-Type:text/html;charset=u... 用php登录网页,发现用 英文用户名 可以登录。用中文的不能登录。。。求救
代码如下:
<?php
header('Content-Type:text/html;charset=utf-8');

//连接服务器、数据库
$host = "127.0.0.1"; $user = "root"; $pwd = "123456";
$db_name = "ledian";

//连接数据库服务器
$conn = mysql_connect($host, $user, $pwd) or
die("连接数据库服务器失败!".mysql_error());

//连接数据库
mysql_select_db($db_name, $conn) or
die("连接数据库失败!".mysql_error());

//数据表的字段为中文时,进行代码转化
mysql_query("set names 'gb2312'");

$username = $_POST['user'];
$userpwd = $_POST['pwd'];
if(!empty($username) and !empty($userpwd)){
$cmd = "select * from tuser where user='".$username."' and pwd='".$userpwd."';";
$data = mysql_query($cmd);
$row = mysql_fetch_row($data);
if(!$row){
echo '登录失败!';
exit;
}else{
echo 'Hello! '.$username;
}

}

?>
展开
 我来答
匿名用户
2014-04-24
展开全部
你文件用utf8., 数据库用gb2312
你说能登录上吗???

php mysql 编码统一!
才不易出现中文乱码或者其他等等问题!

中文在不同编码下, 字节是不同的!
而英文和数字,则不存在编码问题!
更多追问追答
追问
大神,那我该怎么弄啊,我是新手,求指导
数据库是用 gb2312 编码的

那我该修改哪儿啊
追答
你数据库用gb2312, 那就php文件也用gb2312

当然,如果你非要这么用,也不是不可以,那你在查询数据库之前,先把字符串给转换成gb2312编码
php本身有这个函数,不过我忘记怎么写了,你自己百度一下就好啊!
更当然,世界上估计没有人会用后一种方法,那叫画蛇添足。。。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式