选择表单:数据库请求多次

时间:2013-08-19 02:55:39

标签: php database forms select

我有一个我需要用来做选择的数据库。 选择重复多次(一周中的几天)。

我无法进行循环,因为它可能在id中有一些“缺口”,所以我使用while。 问题是,对于每个选择我需要再次调用数据库,我认为这不是一个很好的解决方案。我想找到另一种不那么“沉重”的解决方案

这是我的代码:

<select name="monday">
    <option value="none">Monday </option>
<?php 
$Requete2 = "SELECT * FROM `record`"; 
$Result2 = mysql_query($Requete2) or die(mysql_error());
$rows2 = mysql_num_rows($Result2);
while($row2 = mysql_fetch_array($Result2)){ ?>  
    <option value="<?php echo ($row2['id'] - 1); ?>"><?php echo $row2['name']; ?></option>
<?php } ?>  
</select>

<select name="tuesday">
<option value="none">Tuesday </option>
<?php 
$Requete2 = "SELECT * FROM `record`"; 
$Result2 = mysql_query($Requete2) or die(mysql_error());
$rows2 = mysql_num_rows($Result2);
while($row2 = mysql_fetch_array($Result2)){ ?>  
<option value="<?php echo ($row2['id'] - 1); ?>"><?php echo $row2['name']; ?></option>
<?php } ?>  
</select>

由于

1 个答案:

答案 0 :(得分:2)

如果你想每天打印出相同的内容你可以使用它(我没有测试它的语法错误):

<?php
$sql_query = "SELECT * FROM `record`"; 
$query = mysql_query($sql_query) or die(mysql_error());
$optionHtml = '';
while($row = mysql_fetch_array($query)){ 
    $optionHtml .= '<option value="' . ($row["id"] - 1) . '">' . $row["name"] . '</option>';
}
?>
<select name="monday">
    <option value="none">Monday</option>
    <?php echo $optionHtml; ?>
</select>

<select name="tuesday">
    <option value="none">Tuesday</option>
    <?php echo $optionHtml; ?> 
</select>