last if else语句不起作用

时间:2015-11-07 13:30:57

标签: php mysqli

hye guys ..我的if else语句有什么问题..我试过已经存在于数据库中的输入用户名,并且它工作......如果我离开文本框epmty也是如此...但是如果尝试输入一个有效的名字,它不读取其他声明..有人帮助我..我无法找到问题在哪里

<?php 

include 'connect.php'; 

$username = ($_POST['txtUsername']);

$statement = $mysqli->prepare("SELECT companyUsername FROM tblpartner WHERE companyUsername=?");
$statement->bind_param("s", $username);
$statement->execute();
$statement->bind_result($username);

if ( $statement->fetch()) {
    echo '<span class="error"> taken</span>';
} else if(empty($username)) {
    echo '<span class="error"> Cannot be empty</span>';
} else 

echo '<span class="success"> available.</span>';


?>

1 个答案:

答案 0 :(得分:0)

我认为你做的大部分是正确的,但只是因为你将输入名称和输出结果都绑定到$ username而感到困惑。

您希望检查用户名输入以查看&#34;空&#34;条件和用户名输出要检查NULL以表明该名称可用,如果我正确理解您想要的内容......

所以:

$username = ($_POST['txtUsername']);

if (empty($username) || ($username == '')) {
     echo '<span class="error"> Cannot be empty</span>';
} else {
    $statement = $mysqli->prepare("SELECT companyUsername FROM tblpartner   WHERE companyUsername=?");
    $statement->bind_param("s", $username);
    $statement->execute();
    $statement->bind_result($username);

    if ( $statement->fetch()) {

        echo '<span class="error"> taken</span>';

    } else {

        echo '<span class="success"> available.</span>';

    }



?>