Php 无法从数据库中提取id

Php 无法从数据库中提取id,php,mysql,Php,Mysql,我试图从数据库中提取用户id,但它没有出现。这是登录页面: <?php include ("dbconnect.php"); session_start(); $username = $_POST["username"]; $password=$_POST["password"]; $query=mysql_query("SELECT * FROM autori WHERE autori.username='".$username."' A

我试图从数据库中提取用户id,但它没有出现。这是登录页面:

 <?php
    include ("dbconnect.php");      
    session_start();
    $username = $_POST["username"]; 
    $password=$_POST["password"];

$query=mysql_query("SELECT * FROM autori WHERE autori.username='".$username."' AND autori.password='".$password."'
UNION
SELECT * FROM editori WHERE editori.username='".$username."' AND editori.password='".$password."'
UNION
SELECT * FROM recenzori WHERE recenzori.username='".$username."' AND recenzori.password='".$password."';");

if(mysql_num_rows($query) == 1) 
{
        $rand = mysql_fetch_assoc($query);
        $_SESSION['user_id']    = $rand['id'];
        $_SESSION['username']   = $username;
        $_SESSION['password']   = $password;
        $_SESSION['user_type']  = $rand['id_usr'];

    if(isset($_SESSION['user_type']) && $_SESSION['user_type'] == 1) {
        echo "<script>alert('Sunteţi logat.');window.location.href='articole_pers.php';</script>";
    } else if(isset($_SESSION['user_type']) && $_SESSION['user_type'] == 3){
        echo "<script>alert('Sunteţi logat.');window.location.href='art_noi.php';</script>";
    } else if(isset($_SESSION['user_type']) && $_SESSION['user_type'] == 2){
        echo "<script>alert('Sunteţi logat.');window.location.href='articole_de_publicat.php';</script>";
    }
else { echo "<script>alert('Username or Email nu există !');window.location.href='index.php';</script>";
}
}
?>

如何从数据库中提取用户ID?

好的,首先,尝试使用PDO对象或SQLi,mysql\u查询已被弃用多年

确保$rand['id']通过

print_r($rand)

不要再使用
mysql\u
函数了。在某处进行
var\u转储($rand)
。它有什么功能?你很容易受到@Rudie的攻击,这是var_dump的功能:注意:未定义的变量:C:\xampp\htdocs\About Technology\article\u pers.php中的rand在第72行NULLIt中定义:$rand=mysql\u fetch\u assoc($query);
print_r($rand)