Php 无法从数据库中提取id
我试图从数据库中提取用户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
<?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)