[英]How to mix the SQL language with the PHP language
我写了这段代码:
<?php
$con = mysqli_connect('localhost', 'root', '');
if(!$con)
{
die("not ok");
}
mysqli_select_db($con,"uoh");
$q = " SELECT * FROM student WHERE id = 201102887" ;
$result = mysqli_query($con , $q ) ;
if($row = mysqli_fetch_array($result))
{
echo "<h3> compliance for for " . $row["name"];
echo " and the major is ".$row["major"];
echo "</h3>";
}
$major=$row["major"];
$con = mysqli_connect('localhost', 'root', '');
if(!$con)
{
die("not ok");
}
mysqli_select_db($con,"uoh");
$q = "SELECT * FROM courses LEFT JOIN equal ON equal.course_number=
courses.course_number LEFT JOIN degree_plan ON degree_plan.course_number=
courses.course_number LEFT JOIN student_record ON courses.course_number=
student_record.course_number AND student_record.id=201102887 AND degree_plan.major=".$major;
?>
该代码工作正常,但没有给我结果。
我认为问题出在degree_plan.major=".$major;
因为查询没有给我结果。
你能解决吗?
您不会执行仅定义为字符串的第二个查询。 您应该在第二个查询之后放置与第一个查询相同的内容
$result2 = mysqli_query($con , $q ) ;
if($row2 = mysqli_fetch_array($result2)) {
由于主值看起来像一个字符串,您可能需要用引号引起来,否则查询将失败
AND degree_plan.major='".$major."'";
您应该这样用引号将查询格式化
mysqli_select_db($con,"uoh");
$q = "SELECT * FROM courses LEFT JOIN equal ON equal.course_number=
courses.course_number LEFT JOIN degree_plan ON degree_plan.course_number=
courses.course_number LEFT JOIN student_record ON courses.course_number=
student_record.course_number
AND student_record.id=201102887 AND degree_plan.major='".$major ."'";
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.