为了账号安全,请及时绑定邮箱和手机立即绑定

为什么空的数据库 也会提示“用户名被占用”?求解哈

为什么空的数据库 也会提示“用户名被占用”?求解哈

慕容3067478 2023-03-05 21:17:51
<?php$dbhost = 'localhost';$dbuser = 'root';$dbpw = 'root';$dbcharset = 'gb2312';$tablepre = 'nu_';//连接MySQL数据库$link = mysql_connect($dbhost,$dbuser,$dbpw);if(!$link){echo "数据库连接失败"."</br>";die();}mysql_query("set names ".$dbcharset,$link);//定位数据库if(!mysql_select_db($dbname,$link)){echo "无法定位数据库"."</br>";mysql_close($link);die();}//检查相关注册信息是否已经被占用$query="select * from ".$tablepre."common_members"." where username ='".$_POST['reg_username']."'";$result=mysql_query($query,$link);if(mysql_fetch_object($result)){echo '<script type="text/javascript">alert("用户名已被占用 ,请重新输入!");location.replace("../reg/index.php");</script>';die();}?>
查看完整描述

2 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

用mysql_num_rows()吧,判断>0则说明注册了的,否则就没注册。mysql_fetch_object()一般是用来 输出 内容的,而不是进行判断的。-----------------------<?php
mysql_connect("hostname", "user", "password");
mysql_select_db("mydb");
$result = mysql_query("select * from mytable");
while ($row = mysql_fetch_object($result)) {
echo $row->user_id;
echo $row->fullname;
}
mysql_free_result($result);
?>

查看完整回答
反对 回复 2023-03-08
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

不要用mysql_fetch_object()这个函数来判断,这个返回来的是个数组;一般情况下是这么来判断的:$query="select * from ".$tablepre."common_members"." where username ='".$_POST['reg_username']."'";$result=mysql_query($query,$link);$num = mysql_num_rows($result); //取得结果集中行的数目if($num){echo '<script type="text/javascript">alert("用户名已被占用 ,请重新输入!");location.replace("../reg/index.php");</script>';die();}

查看完整回答
反对 回复 2023-03-08
  • 2 回答
  • 0 关注
  • 68 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信