我有一個下拉框,它包含1-31天,並且我想存儲/保存用戶返回頁面時以前選擇的內容。PHP - 動態填充的選擇下拉菜單中的預選/保存選項
我的函數生成的盒子是:
public function fetchDDMMYYYYDropdown($select_d,$session_d) {
$days = range (1, 31);
$dropdown .= '<select name="'.$select_d.'">';
foreach($days as $key=>$name){
if($session_d==$name){
$session = 'selected';
}
$dropdown .= '<option value="'.sprintf("%02d", $name).'" selected="'.$session.'">'.sprintf("%02d", $name).'</option>';
}
$dropdown .= '</select>';
return $dropdown;
}
我的形式在這個頁面上:
<?php
session_start();
include("includes/func.class.php");
$dob = $func->fetchDDMMYYYYDropdown('dob_d', $_SESSION['dob_d']);
?>
<form action="t35t_send.php" method="get">
<?php echo $dob;?>
<input type="submit" value="send">
</form>
而且它進入這個保存會話變量:
session_start();
$_SESSION['dob_d'] = $_GET['dob_d'];
$dob = $_SESSION['dob_d'];
echo $dob;
我可以告訴$ _SESSION ['dob_d']是正確的,並保存,因爲我可以輸出它裏面的函數和初始化L型網頁 - 所以它只是下面,絕不能是正確的,但此刻的下拉框只是重置回第一個值,而不是保存的會話:
if($session_d==$name){
$session = 'selected';
}
$dropdown .= '<option value="'.sprintf("%02d", $name).'" selected="'.$session.'">'.sprintf("%02d", $name).'</option>';
很高興幫助你mate .. – alwaysLearn 2013-03-28 11:22:04