【问题标题】:php javascript form with dropdown has %24 in my _GET after I submit我提交后,带有下拉列表的 php javascript 表单在我的 _GET 中有 %24
【发布时间】:2013-04-23 01:25:29
【问题描述】:

我正在提交一个表单,但_GET 在 URL 中返回的方式存在一些问题

代码如下:

index.php/search?stmindate=2013-04-01&stmaxdate=2013-05-31&%24comname=teststring

如您所见,在2013-05-31comname 之间,我得到&%24 当我尝试在另一边获取它时,它不会以“teststring”的形式返回,我认为这是因为:

<form action="http://<?=$_SERVER["SERVER_NAME"]?>/index.php/search" method="GET">
  By  Start Date:<br/>
  Min Date:<?= date_input("stmindate", $stmindate, true) ?>
  Max Date:<?= date_input("stmaxdate", $stmaxdate, true) ?> 
  <select name="$comname">
    <option value="all">All</option>
    <?
      for ($scan = 0; $scan < count($Companies); $scan++) {
        $ty = $Companies[$scan]['name'];
        $sel = "";
        echo "<option $sel value=\"$ty\">$ty</option>".PHP_EOL;
      }
    ?>
  </select>
  <input type="submit" value="Submit">
</form>

【问题讨论】:

    标签: php javascript html mysql forms


    【解决方案1】:

    请查看您的&lt;select name="$comname"&gt;。你想把美元符号拿出来。 %24 是一种传递 $ 的 URL 友好方式。我认为你不想做的事情。

    【讨论】:

    • 这是我的问题 - 我正在使用带有名为 Jumi 的插件的 Joomla。 Jumi把'$'当作特殊字符,不输出为char
    【解决方案2】:

    http://www.obkb.com/dcljr/charstxt.html

    %24 是一个美元符号。它将它编码到 url 字符串中,您需要对 url 进行解码才能使用它,尽管您似乎不太可能希望在您的 URL 中使用 $ 符号。

    【讨论】:

      【解决方案3】:

      某些字符经过编码以在 URL 中使用。您只需使用urldecode() 将它们转换回来。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-02-22
        • 1970-01-01
        • 2014-05-01
        • 2015-10-25
        • 2011-01-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多