【问题标题】:Hard coded GET values not sent from form [duplicate]未从表单发送的硬编码 GET 值 [重复]
【发布时间】:2013-09-14 22:14:49
【问题描述】:

在我的表单元素的 action 属性中,我指定了一些获取值,这些值将与实际表单中的值一起发送。但是我硬编码的值没有发送到新文档,我做错了什么?

 <form action="loginForm.php?type=dept" method="get">
    <select name="dept" onchange="this.form.submit()">
      <option value="">Department</option>
      <option value="Bar">Bar</option>
      <option value="Cleaning">Cleaning</option>
      <option value="Kitchen">Kitchen</option>
      <option value="Management">Management</option>
      <option value="Maintenance">Maintenance</option>
      <option value="Waiting">Waiting</option>
    </select>
  </form>

loginForm文件最上面是这段代码,每次都会输出'Type not set'

if(!isset($_GET['type']))
{
    echo 'Type not set';
}

【问题讨论】:

    标签: php html forms web get


    【解决方案1】:

    这是因为当页面提交时,您通过将它们放在 URL 中“强制”获取的参数被“覆盖”。您将需要使用一个隐藏字段,例如:

    input type="hidden" name="type" value="valuehere" />
    

    将此添加到您的表单将提交此附加值。

    【讨论】:

      【解决方案2】:

      尝试使用hidden 这样的输入发送它:&lt;input type='hidden' name='type' value='dept' /&gt;

      你的代码应该是这样的:

      <form action="loginForm.php" method="get">
          <input type='hidden' name='type' value='dept' />
          <select name="dept" onchange="this.form.submit()">
            <option value="">Department</option>
            <option value="Bar">Bar</option>
            <option value="Cleaning">Cleaning</option>
            <option value="Kitchen">Kitchen</option>
            <option value="Management">Management</option>
            <option value="Maintenance">Maintenance</option>
            <option value="Waiting">Waiting</option>
          </select>
        </form>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2023-03-29
        • 2016-01-14
        • 1970-01-01
        • 2012-10-17
        • 2011-03-09
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多