0

データベースに 2 つの値を送信するフォームがあります。フォームが読み込まれると、データベースに既に値があるかどうかを確認します。これらの値を使用して、ドロップダウン ボックスのデフォルトとして設定しようとしています。任意の助けをいただければ幸いです。ありがとう

<form method="post" action="add_res.php?id=<? echo $id;?>">
    <fieldset>
    <label>From</label>
    <select name='one' id='one'>
    <?
        for($hours=0; $hours<24; $hours++) // the interval for hours is '1'
            for($mins=0; $mins<60; $mins+=30) // the interval for mins is '30'
                echo '<option>'.str_pad($hours,2,'0',STR_PAD_LEFT).':'.str_pad($mins,2,'0',STR_PAD_LEFT).'</option>';
    ?>
    </select><br><br>
    <select name='two' id='two'>
    <?
        for($hours=0; $hours<24; $hours++)
            for($mins=0; $mins<60; $mins+=30)
                echo '<option>'.str_pad($hours,2,'0',STR_PAD_LEFT).':'.str_pad($mins,2,'0',STR_PAD_LEFT).'</option>';
    ?>
    </select>
    </fieldset>
    <input type="submit" value="Restrict" class="btn_searchp"></a>
</form>
4

1 に答える 1

0

値を結合してから、データベースの値と比較する必要があります

<select name="one" id="one">
<?php for loop
$timeToDisplay = sprintf('%s:%s',str_pad($hours,2,'0',STR_PAD_LEFT),
                                 str_pad($mins,2,'0',STR_PAD_LEFT));
$selected = if($row['timeRow'] == $timeToDisplay ) ? 'selected="selected"' : '';
// let $row['timeRow'] is the value retrieve from database 
?>
   <option value="<?=php echo $timeToDisplay;?>" <?php echo $selected;?> >
     <?php echo $timeToDisplay?>
   </option>
</select>

参考文献:

sprintf

ternary operator

于 2012-07-09T04:16:58.983 に答える