1
我想創建一個菜單,用戶可以查看他們創建的菜單。該菜單由一個下拉框組成,用戶可以使用該框來按周過濾菜單。PHP有這樣一個更簡單和更整潔的方法嗎?
然後菜單會顯示一週中的七天和他們早餐,午餐,晚餐,布丁和小吃的五種用餐時間。以下是我目前爲止的顯示效果。
$sqlmeasurement = mysql_query("SELECT title FROM recipe JOIN menu ON recipe.recipeid = menu.recipeid WHERE menu.weekid = '".$selectweek."' AND menu.mealtimeid = '1'") or die(mysql_error());
Print '<table border="0">
<tr>
<th width="100"> </th>
<th width="200">Monday</th>
</tr>';
echo "<tr>";
echo "<td><strong>Breakfast</strong></td>";
echo "<td>";
while($info = mysql_fetch_array($sqlmeasurement))
{
echo $info['title'];
echo "<br/>";
}
echo "</td> ";
echo "</tr>";
echo "</table>";
正如你可以看到這個PHP語句選擇什麼,我從桌上想,而是因爲一週有7天,5種類型的餐次,這意味着我將有35倍,以便複製此代碼顯示所有我想要的。
因此,例如代碼的下一位會是這樣:
$sqlmeasurement2 = mysql_query("SELECT title FROM recipe JOIN menu ON recipe.recipeid = menu.recipeid WHERE menu.weekid = '".$selectweek."' AND menu.mealtimeid = '2'") or die(mysql_error());
Print '<table border="0">';
Print '<tr>
<th width="100"> </th>
<th width="200"> </th>
</tr>';
echo "<tr>";
echo "<td><strong>Lunch</strong></td>";
echo "<td>";
while($info2 = mysql_fetch_array($sqlmeasurement2))
{
echo $info2['title'];
echo "<br/>";
}
echo "</td> ";
echo "</tr>";
echo "</table>";
依此類推,直到我所有的日子和他們的用餐時間。
有沒有辦法顯示所有的信息,沒有這個迭代?
是的,你得到所有你需要的信息在一個數組中。然後你開始輸出。更好地使用某種模板引擎。例如,Smarty。 – Jauzsika
ps。打印 - 回聲較慢 – user956584
@Userpassword是的,我猜想,有些怪異的微秒會顯着改善用戶體驗。一個很好的改進是使用html插值,並在與「視圖」頁面不同的部分進行查詢。 –