我試圖使用列表框表單來查詢數據庫,但它沒有顯示任何內容。這個想法是,我查詢了數據庫以填寫郊區名稱的表格,然後選擇郊區將再次查詢數據庫以返回該郊區的公園名稱。當我使用搜索表單時,它不會返回任何內容。爲什麼不是我的表單工作
這是形式:
<p>Select Suburb to search</p>
<form method="post" action="suburb_search.php" id="search">
<select>
<?php while ($row = $result->fetch_assoc()) { ?>
<option value="suburb"> <?php echo $row['suburb']?></option>
<?php }
} ?>
</select>
<input type="submit" name="search" value="Search" />
</form>
</div>
這是它應該使用表單結果查詢數據庫,但它不工作:
<?php
$searchRequest = False;
if (isset($_GET['suburb'])){
$search = $_GET['suburb'];
$sql2 = "SELECT * FROM park_list WHERE suburb=$search";
$result2 = $db->query($sql2);
if($message){
echo "<p>$message</>";
} else {
?>
<div class="form">
<?php
while ($row2 = $result2->fetch_assoc()){
?>
<div class="results">
<h2><?php echo $row2['park_name'];?></h2>
<?php
}
}
} ?>
查詢很容易受到SQL注入'(郊區= $搜索)' – Option
你'select'元素缺少'name'屬性,所以當你提交表格時,不會發送任何內容。而且您可能不希望爲每個選項輸出相同的值 - 因爲這會讓選擇變得毫無意義。 – CBroe
你似乎是以自己爲基礎的價值觀,這是不正確的。 '