簡體   English   中英

選擇框無法在POST之后獲取帶有空格的選項值

[英]Select box fails to fetch option value with white spaces after POST

我有一個選擇框,它從數據庫中獲取值。數據庫中的選項是:

  1. 紐約市

  2. 濟州島

選擇框將顯示數據庫中的確切值。 我有一個提交按鈕,將值發布到另一個頁面。 我的問題是,當我回顯選定的選項值時,沒有顯示空格后的單詞,即僅顯示“ Newyork”。 這是我的代碼:

   <select name="users_desc" id="hometexts">
   <option selected='selected' value='' disabled='disabled'  >Select Name</option>";
    <?php 
    $result = mysql_query("SELECT public_desc,public_id FROM table");
                     while ($row = mysql_fetch_array($result)) 
                    { 
                          if ($_GET['users_desc']==$row["public_id"]) 
                        {
                           echo '<option selected="selected" value='.$row["public_desc"].'>'.$row["public_desc"].'</option>';
                        } 
                        else 
                        {
                           echo '<option value='.$row["public_desc"].'>'.$row["public_desc"].'</option>';
                        }

                    }
                    ?>
                    </select>

用於將選項值發布到另一個頁面的代碼。

if(isset($_POST['login_btn']))
{
    $desc=$_POST['users_desc'];

    echo $desc;
    header("location:publicUserReports.php");

}

我只想獲得完整的價值。

您需要引用值

value="'.$row["public_desc"].'"

所以

echo '<option selected="selected" value="'.$row["public_desc"].'">'.$row["public_desc"].'</option>';

當您查看HTML時,它必須顯示

<option value="Jeju island">

代替

<option value=Jeju island>

只是為了獲得更多信息,如果要輸出沒有變量來連接的字符串/文本,則“和”之間會有很大的區別,您應該始終使用單引號(')。

但是,如果有一些要連接的變量,則應該使用(可選)雙引號(“)。我個人更喜歡使用它,因為它更具可讀性。

例子:

如果我只是要輸出,可以說:我喜歡編碼。 然后我用:

echo 'I love Coding';

但是當我有一些變量要連接時,我使用:

echo "I $action Coding";

現在根據您的問題:

echo "<option selected='selected' value='$row[public_desc]'>$row[public_desc]</option>";

對我來說,這更具可讀性,更不容易出錯:)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM