mysql_num_rows();不会发布


mysql_num_rows(); won't post

im 正在注册,我想检查是否使用了用户名,不知道为什么mysql_num_rows(); 函数不会发布任何内容

<?php
if(isset($_POST['name_signup'])) {
    if($_POST['pass_signup']==$_POST['pass_a_signup']){
        $select=mysql_num_rows(mysql_query("SELECT * FROM users WHERE nick='".$_POST['nick_signup']."'"));
        if($select=!0){
        $name=$_POST['name_signup'];
        $secondname=$_POST['secondname_signup'];
        $nick=$_POST['nick_signup'];
        $pass=$_POST['pass_signup'];
        $mail=$_POST['email_signup'];
        $passx=md5(md5($pass));
        include 'db.php';
        mysql_query("INSERT INTO users(firstname,secondname,nick,pass,email,date)VALUE('".$name."','".$secondname."','".$nick."','".$passx."','".$mail."',NOW())");
        echo "Succesfully Signed up";
        echo'<meta http-equiv="refresh" content="3;URL=../index.php">';
        }else {
            echo "Username used";
            echo'<meta http-equiv="refresh" content="3;URL=../index.php?page=signup">';
            }
    }
    else{
        echo'Passwords do not match';
        echo'<meta http-equiv="refresh" content="1;URL=../index.php?page=signup">';
        }
}
else {
    echo'<meta http-equiv="refresh" content="0;URL=../index.php">';
}
?>

mysql扩展已被弃用,您应该停止使用它。而是尝试 mysqliPDO .

您的代码中有一个错误:

if($select=!0){

你应该像这样更正它:

if($select!=0){

再次,停止使用 mysql .并开始使用预准备语句,否则您的代码将面临SQL注入的危险

请不要使用 mysql_()

使用 mysqli_(),因为 mysql_*() 已贬值

将此if($select=!0){更新为 "if($select > 0){"

$qry = mysql_query("SELECT * FROM users WHERE nick= '".$_POST['nick_signup']."' ");
$select=mysql_num_rows(
$qry);
        if($select > 0){