2015-02-11 65 views
0

好的,我有一个问题。我需要检查用户是否已经存在,但问题是现在我需要在if()中输入我无法获取,因为我已经关闭,但如果我没有关闭,我得到一个错误,因为无法运行2条语句。所以我想如果有人能帮助我?我有其他代码,但我只在这里给代码。Mysqli编写语句寄存器

这里是我的代码:

$result = $mysqli->prepare("SELECT username FROM user WHERE username=?"); 
$result->bind_param("s", $username); 
$result->execute(); 
$result->bind_result($username);         
$result->close(); 

if(){ 
$register = $mysqli->prepare("INSERT INTO user 
        (username, password, email, rr, rank) 
        VALUES (?, ?, ?, ?, ?)"); 
$register->bind_param("sssii", $username, $kode, $email, $rr, $rank); 
$register->execute(); 
$register->close();         
} else { 
    echo "User already exists!"; 
} 

回答

0

更新: “!用户已经存在” 更符合逻辑的说法

$result = $mysqli->prepare("SELECT username FROM user WHERE username=?"); 
$result->bind_param("s", $username); 
$result->execute(); 
$found = $result->fetch();       
$result->close(); 

if ($found){   
    echo "User already exists!";           
} else { 
    $register = $mysqli->prepare("INSERT INTO user 
        (username, password, email, rr, rank) 
        VALUES (?, ?, ?, ?, ?)"); 
    $register->bind_param("sssii", $username, $kode, $email, $rr, $rank); 
    $register->execute(); 
    $register->close(); 

} 
+0

它使用户名的合法性及其saing回声;并把数据同名,但如果它不存在,它没有说什么,并没有把数据在 – 2015-02-11 19:13:52

+0

这是不可能的,它不能做的事情从if和else .... – arnoudhgz 2015-02-11 19:18:33

+0

我该怎么做? – 2015-02-11 19:19:37