2013-07-21 40 views
1

您好我有兩個下拉其用於從一個MySQL表篩選數據框,問題是框始終顯示爲,如果當我使用isset到determin如果任何人有他們設置任何選定的值。PHP下拉框總是Isset

下面是投遞的代碼。

<?php 
         if (isset($_POST['referrer']) && $_POST['referrer'] != "referrer") { 
         $select = $_POST['referrer']; 
         } 
         ?> 
            <select name="referrer"> 
            <option value="">Referrer</option> 

             <?php 
         // Get records from database (table "name_list"). 
         $list=mysql_query("select DISTINCT referrer from masterip_details WHERE country_code='GB' AND TRIM(IFNULL(referrer,'')) <> '' order by referrer DESC"); 
         // Show records by while loop. 
         while($row_list=mysql_fetch_assoc($list)){ 
         $referrer = $_POST['referrer']; ?> 
             <option value="<?php echo $row_list['referrer']; ?>" <?php if($row_list['referrer']==$select){ echo "selected"; } ?>><?php echo $row_list['referrer']; ?></option>   
             <?php  
         } 
         ?> 
            </select> 



<?php 
         if (isset($_POST['returning']) && $_POST['returning'] != "returning") { 
         $select2 = $_POST['returning']; 
         } 
         ?> 
            <select name="returning"> 
            <option value="">Referrer</option> 
             <?php 
         // Get records from database (table "name_list"). 
         $list2=mysql_query("select * from repeater_drop_down order by id DESC"); 
         // Show records by while loop. 
         while($row_list2=mysql_fetch_assoc($list2)){ 
         $returning = $_POST['returning']; ?> 
             <option value="<?php echo $row_list2['value']; ?>" <?php if($row_list2['value']==$select2){ echo "selected"; } ?>><?php echo $row_list2['title']; ?></option>  
             <?php  
         } 
         ?> 
            </select> 

現在,這裏是代碼的isset元素。

$returning = $_POST['returning']; 
$referrer = $_POST['referrer']; 

if (isset($returning, $referrer)){ 

//code // 

    elseif (isset($returning)){ 

    ///code // 

    elseif (isset($referrer)){ 

    //code // 

    else { 

//code 

     } 

我沒有包括查詢,因爲他們工作得很好,但我無論是否選擇這兩個下拉框的代碼將自動進入第一isset兩個變量即使只有一個箱子有選擇的選項。

任何意見或建議,將不勝感激。

+0

他們都始終選擇一個選項。所以第一個條件永遠是真的。該選項的值可能是空字符串,但它仍然是一個值。 – David

+0

您是否嘗試將'isset'更改爲'empty'以查看您是否獲得了更好的結果? – DevlshOne

回答

1

您應該檢查與表單提交的價值,不僅在選擇崗位價值是否被設置。

引薦的值將是''(一個空字符串),如果它是不改變選擇提交。請檢查一下。