我有一些數字爲1-5的下拉框。我可以使用此代碼來填充下拉列表,但想知道是否可以以某種方式只調用一次數據庫,但填充所有使用相同數字的下拉列表?使用相同的mysql查詢填充多個下拉列表
<?php
$sql = "SELECT * FROM riskNumDrop";
$result = $conn->query($sql);
if (!$conn->query($sql)) {
echo "query failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
echo '<select class="assess" name="precontcons" style="width:4em">' ;
while($row = $result->fetch_assoc()){echo '<option value='. $row['riskNumDrop'] .'>'.$row['riskNumDrop'].'</option>';}
?> </select>
So理想情況下,我生成一次輸出並重復使用它多次。我猜數組($結果已經是),但我如何填充從它的下拉? TIA
你在你的代碼中執行兩次查詢。如果你沒有什麼特別的理由這樣做,你肯定不應該那樣做。 –
當你說代碼執行兩次時,我不確定遵循@DawidFerenczy。你的意思是在上面的代碼中還是在腳本中,如果我多次調用相同的信息?我明白你的意思是在scropt中,但如果你的意思是在上面的代碼中,你能解釋一下嗎?我可以在第二行看到它的執行結果放在數組$ result中,但是很遺憾看到它在其他地方再次執行。很高興被證明是錯誤的,因爲我都希望我的代碼更清潔。 –
你沒有看到你正在調用'$ conn-> query($ sql)'兩次?它甚至連續兩行。第一次執行查詢並將返回值賦給變量'$ result'時,第二次執行相同的查詢並僅在條件中測試返回值而不分配它。 –