[英]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.