简体   繁体   English

为什么mysqli_num_rows不返回值?

[英]Why is mysqli_num_rows not returning a value?

This the the code for my website. 这是我网站的代码。 It is designed to register new users, only a logged in admin can do this. 它旨在注册新用户,只有登录的管理员才能执行此操作。 The account is created successfully, but it doesn't seem to be returning a 1 for mysqli_num_rows. 该帐户已成功创建,但对于mysqli_num_rows似乎未返回1。 I printed the value that num_rows returning and nothing came out, not even a 0. I have worked on this for days, I am very new to coding in php so this is probably a glaring mistake, but I can't see it. 我打印了num_rows返回的值,什么也没出来,甚至没有0。我已经花了好几天了,我对用php编码非常陌生,所以这可能是一个明显的错误,但是我看不到。 Any help would be greatly appreciated. 任何帮助将不胜感激。 I have search Google, but couldn't find anything. 我已经搜索了Google,但找不到任何东西。

if($_SERVER['REQUEST_METHOD']=="POST"){
    $name = mysqli_real_escape_string($_POST['fname']);
    $email = mysqli_real_escape_string($_POST['email']);
    $user = mysqli_real_escape_string($_POST['user']);
    $pass = mysqli_real_escape_string(md5($_POST['password']));
    $authority = mysqli_real_escape_string($_POST['use']);

    $queryCheck = "SELECT `user` FROM `user` WHERE `user`='$user';";
    $resultCheck = mysqli_query($link, $queryCheck);
    $rowCheck = mysqli_num_rows($resultCheck);
    if($rowCheck != 1){
    $query = "INSERT INTO `user` (`id`, `name`, `email`,`user`,`pass`) VALUES ($authority,'$name','$email','$user','$pass');";

    //echo $query;

    $result = mysqli_query($link, $query);
    $row = mysqli_affected_rows($result);

    if($row == 1){
        echo "User Created Successfully!<br/>";
        echo '<br/><br/><br/><a href="admin.php">Return to Administration Page</a>';

    }else{
        echo "User was not created, Please try again.";
    }
    }else{
        echo 'User already exists.';
    }
}

我发现您必须使用mysqli_affected_rows作为mysql中的插入短语。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM