php中的查询返回null或空值
我编写了以下查询:php中的查询返回null或空值,php,mysql,Php,Mysql,我编写了以下查询: $query1 = "SELECT * FROM session WHERE Id_session IN (SELECT * FROM students_in_session WHERE Username = '$email')"; $res = mysqli_query($conn,$query1); $query2 ="SELECT * FROM students_in_session WHERE Username='$email'"; $res2
$query1 = "SELECT * FROM session WHERE Id_session IN (SELECT * FROM students_in_session WHERE Username = '$email')";
$res = mysqli_query($conn,$query1);
$query2 ="SELECT * FROM students_in_session WHERE Username='$email'";
$res2 = mysqli_query($conn,$query2);
if (!$res) {
die(mysqli_error($conn));
}else{
while ($row = mysqli_fetch_array($res)) {
print_r($row);
$course = $row['Degree'];
$date = $row['Date'];
$hour = $row['Hour'];
$room = $row['Room'];
}
}
if(!$res2){
die(mysqli_error($conn));
}else{
while ($row = mysqli_fetch_array($res2)) {
print_r($row);
$prof = $row['Professor'];
$assis = $row['Assistent'];
}
}
return "\n\nDegree: ".$course."\n"."Date: ".$date."\n"."Hour: ".$hour."\n"."Room: ".$room."\n"."Prof: ".$prof."\n"."Assistent: ".$assis;
}
当前使用phpmyadmin并测试查询将返回预期结果,但使用代码中的查询时,变量都为空
以下是DB的表格:
会议
课程中的学生
在查询1中,您只需尝试将Id_会话与只需要使用会话Id进行比较的整个表进行比较 把这个换掉
$query1 = "SELECT * FROM session WHERE Id_session IN
(SELECT * FROM students_in_session WHERE Username = '$email')";
与
我想它会对你有用。$query1=SELECT*FROM session,其中Id\u session在SELECT*FROM students\u在session,其中Username='email'
在此查询中,必须只选择一列,如
$query1=SELECT*FROM session,其中Id_session在session中,SELECT Id_session在session中,FROM students_在session中,Username='$email'
选中它。在嵌套查询上使用IN时,嵌套查询只能返回一列: 从会话中选择*FROM session,其中Id\u session位于 在用户名为“$email”的会话中,从学生会话中选择Id会话 但是,在您的情况下,嵌套查询不是最好的方法,因为MySQL必须执行两个查询。您最好进行内部联接: 选择S* 来自会话S 内部连接学生在会话中在会话中SS上。Id会话=S.Id会话 其中SS.Username=“$email”
哪个查询返回结果?第一个、第二个或两者都应该连接电子邮件变量,因为php不能识别单引号中的变量。在会话中从学生中选择*,其中用户名=“$email”;应在用户名为“”的会话中从学生中选择*$电邮";;phpmyadmin中的所有查询返回结果,在我的php代码中为none。
|Id_Session|Code|Name|Surname|Username|Professor|Assistent|
$query1 = "SELECT * FROM session WHERE Id_session IN
(SELECT * FROM students_in_session WHERE Username = '$email')";
$query1 = "SELECT * FROM session WHERE Id_session IN
(SELECT Id_Session FROM students_in_session WHERE Username = '$email')";