2015-02-09 65 views
0

我目前有此代碼記住上次選擇的帖子。記住下拉選項或選擇是否GET

<select tabindex="1" name="system_customer"> 
     <option value="Choose">- Choose a Customer -</option> 
     <?PHP while ($row = mysql_fetch_array($result_get_users)) 
     { 
     echo "<option value='".$row['id']."'"; 
     echo $system_customer == $row['id'] ? 'selected="selected"' : ''; 
     echo ">".$row['firstname']." ".$row['lastname']."</option>"; 
     } ?>> 
    </select> 

負載(提交前)列表默認爲「選擇」。我想要做的是,如果URL有"userid=1"選擇用戶1,或者如果它是"userid=2",則選擇用戶2,但保留代碼以記住上次選擇的內容。

謝謝。

PS - 由於我正在爲其編寫模塊,因此無法使用mysqli或PDO。它被硬編碼和加密。

+0

高亮顯示或選擇? – 2015-02-09 06:07:29

+0

Selected - 編輯後 – CrunchyToast 2015-02-09 07:02:47

回答

0

添加該代碼上面 -

$system_customer = ""; 
if (!empty($_GET['userid'])) { 
    $system_customer = $_GET['userid']; 
} 

然後 -

<select tabindex="1" name="system_customer"> 
    <option value="Choose">- Choose a Customer -</option> 
    <?PHP 
    while ($row = mysql_fetch_array($result_get_users)) { 
     echo "<option value='".$row['id']."'"; 
     echo $system_customer == $row['id'] ? 'selected' : ''; 
     echo ">".$row['firstname']." ".$row['lastname']."</option>"; 
    } 
    ?> 
</select> 
+0

它的工作原理應該如此,除非帖子在URL中沒有'userid'時不記得選擇。 – CrunchyToast 2015-02-09 07:25:41

+0

通過刪除'$ system_customer =「」;' – CrunchyToast 2015-02-09 07:28:28

0

您可以使用會話或餅乾 爲EXP:

<?PHP 
Session_start(); 
if (isset ($_POST['system_customer'])) { 
$_SESSION['SELECTED_USER_ID'] = $_POST['system_customer']; 
?> 

,你haave做出一些改變你下拉列表

<select tabindex="1" name="system_customer"> 
<option value="Choose">- Choose a Customer -</option> 
<?PHP while ($row = mysql_fetch_array($result_get_users)) { 
echo "<option value='".$row['id']."'"; 
echo $_SESSION['SELECTED_USER_ID'] == $row['id'] ? 'selected="selected"' : ''; 
echo ">".$row['firstname']." ".$row['lastname']."</option>"; 
} 
?>> 
</select> 

在您選擇的形式,你必須檢查是否會話如果將該選項置於選定屬性,則id等於行。 但是如果你想長時間保存細節,最好使用cookie或數據庫,在另一種情況下你不能這樣做。