注册验证一直失败
require_once 'db.php';
session_start();
$name = $_POST["name"] ;
$mail = $_POST["email"] ;
$pwd= $_POST["key"] ;
$pwd2 = $_POST["rekey"] ;
$agreement = $_POST["agreement"] ;
if($agreement=="T"){
if($pwd==$pwd2){
$sql="select * from user";
$result = $db->query($sql);
if($result && $row=$result->fetch_assoc()){
if($name==$row["name"]){
echo '
echo "alert('用户已存在');";
echo "window.location='enroll.html'";
echo "";
exit;
}elseif($mail==$row["mail"]){
echo '
echo "alert('该邮箱已使用');";
echo "window.location='enroll.html'";
echo "";
exit;
}else{
$sql="insert into user(name,represent,pwd,mail,time) value('{$name}',0,'{$pwd}','{$mail}',now())";
$result = $db->query($sql);
if($result && $db->affected_rows>0){
$sql="select * from user where name='{$name}'";
$result = $db->query($sql);
if($result && $row=$result->fetch_assoc()){
$uid=$row['uid'];
}
}
$result->free_result;
$db->close;
$sql="insert into userphoto(uid,name,type,url,size,time) value('{$uid}','steve','.png','./img/userphoto/steve.png','6.24kb',now())";
$result = $db->query($sql);
if($result && $db->affected_rows>0){
echo '
echo "alert('注册成功');";
echo "window.location='index.php'";
echo "";
exit;
}else{
echo '
echo "alert('注册失败');";
echo "window.location='enroll.html'";
echo "";
exit;
}
}
}
$result->free_result;
$db->close;
}else{
echo '
echo "alert('密码不一致,请重新输入');";
echo "window.location='enroll.html'";
echo "";
exit;
}
}else{
echo '
echo "alert('未同意协议,注册失败');";
echo "window.location='enroll.html'";
echo "";
exit;
}
$result->free_result;
$db->close;
?>
用户已经存在,这个一直验证失败,每次注册一样的用户名都是成功,应该怎么改?
------解决思路----------------------
$sql="select * from user"; ???
这个 sql 执行的结果你知道吗?
他将返回 user 表中的全部记录,而你只取出了第一条记录 $row=$result->fetch_assoc()