當學生ID「sid」在搜索框中輸入時,我需要從「stud」表中返回一些學生的詳細信息。同樣在第二部分中,我需要在我的數據庫「enrl」中搜索註冊表以獲取此給定學生ID的註冊課程的UCAS ID。爲什麼我打印3次輸出?
問題是爲什麼我會搜索我的搜索的第二部分3次? 這裏是我的代碼:
<?php
mysql_connect("localhost","root","") or die ("Could Not Connect!");
mysql_select_db("swanseauniversity") or die ("Could Not Connect to database!");
$output = '';
$output2 = '';
//Collect
if(isset($_POST['search'])){
$searchq = $_POST['search'];
//Search "stud" table
$query = mysql_query("SELECT * FROM stud WHERE sid LIKE '$searchq'") or die("Could not Search");
$count = mysql_num_rows($query);
if($count == 0){
$output = 'there was no search result';
}
else {
while($row = mysql_fetch_array($query)){
$id = $row['sid'];
$title = $row['title'];
$fname = $row['firstname'];
$lname = $row['lastname'];
$DOB = $row['dob'];
if ($row['gender'] == 'f'){
$gender = 'Female';
}
if ($row['gender'] == 'm'){
$gender = 'Male';
}
$output .=
'<table style="width:100%", frame="box">'
.'<tr>'
.'<td>'.'Student ID'.'</td>'
.'<td>'. $id.'</td>'
.'</tr>'
.'<tr>'
.'<td>'.'Title'.'</td>'
.'<td>'. $title.'</td>'
.'</tr>'
.'<tr>'
.'<td>'.'Fullname:'.'</td>'
.'<td>'. $fname.' '.$lname.'</td>'
.'</tr>'
.'<tr>'
.'<td>'.'Date of Birth:'.'</td>'
.'<td>'. $DOB.'</td>'
.'</tr>'
.'<tr>'
.'<td>'.'Gender'.'</td>'
.'<td>'. $gender.'</td>'
.'</tr>'
.'</table>'
;
}
}
//Search "enrl" Table
$query = mysql_query("SELECT * FROM enrl WHERE sid LIKE '$searchq'") or die("Could not Search");
$count = mysql_num_rows($query);
if($count == 0){
$output2 = 'there was no search result';
}
else {
while($row = mysql_fetch_array($query)){
$enrolledcourse = $row['pid'];
$output2 .=
'<table style="width:100%", frame="box">'
.'<tr>'
.'<td>'.'UCAS Code'.'</td>'
.'<td>'. $enrolledcourse.'</td>'
.'</tr>'
.'<tr>'
.'<td>'.'dummy1'.'</td>'
.'<td>'. '</td>'
.'</tr>'
.'<tr>'
.'<td>'.'dummy2'.'</td>'
.'<td>'. '</td>'
.'</tr>'
.'</table>'
;
}
}
}
?>
<html>
<head>
<title>Student Search</title>
</head>
<body>
<!--SEARCH FORM-->
<form action="index.php" method="post">
<label>Query by Student ID #:</label> <input type="text" name="search" placeholder="Search for students..."/>
<input type="submit" value="Submit"/>
</form>
<hr>
<h4 style="margin-bottom:0px">Personal Details</h4>
<?php
print("$output");
?>
<h4 style="margin-bottom:0px">Course Details</h4>
<?php
print("$output2");
?>
</body>
</html>
你有三行數據相同嗎?你的代碼是按照SQL注入開放的。你應該更新到'PDO'或'mysqli'驅動程序。 – chris85