Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/298.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
php表单中的开关大小写在提交时不更新_Php - Fatal编程技术网

php表单中的开关大小写在提交时不更新

php表单中的开关大小写在提交时不更新,php,Php,使用答案。我根据文本字段CallType的输入为另一个表单元素设置了一个表单元素大小写开关,如下所示: <select id="CallType" name="CallType"> <option value="1">1</option> <option value="2">2</option> </select> 1. 2. 然后,我像这样设置case开关,但在formpost时,该值不会插入到我的数

使用答案。我根据文本字段CallType的输入为另一个表单元素设置了一个表单元素大小写开关,如下所示:

 <select id="CallType" name="CallType">
   <option value="1">1</option>
   <option value="2">2</option>
 </select>

1.
2.
然后,我像这样设置case开关,但在formpost时,该值不会插入到我的数据库中。我可以通过使用静态CallDesc文本字段和表单插入fine来测试这一点。我做错了什么

示例开关:

  <?php 
    switch($_POST['CallType']) {

        case '1':
        echo '<input id="CallDesc" name="CallDesc" type="text" value="Air-conditioner / Heat Pumps" class="formTextfield_Medium" tabindex="3">';
        break;
        case '2':
        echo '<input id="CallDesc" name="CallDesc" type="text" value="Refrigerator / Ice (Makers/Machines) / Wine Cooler" class="formTextfield_Medium" tabindex="3">';
        break;
    }
  ?>

您选择的名称是CallType,而不是SPG\U CallType


此外,与switch语句相比,使用关联数组或更好的数据库来管理它可能更容易。

我没有包括POST-form元素。我选择用Javascript来实现这一点,这要容易得多

您需要将其放入POST表单中,以使其正常工作:

 <form action="" method="post">
 <select id="CallType" name="CallType">
   <option value="1">1</option>
   <option value="2">2</option>
 </select>
 <input type="submit" />
 </form>

1.
2.
然后PHP在您发布它时工作:

<?php 
switch($_POST['CallType']) {

    case '1':
    echo '<input id="CallDesc" name="CallDesc" type="text" value="Air-conditioner / Heat Pumps" class="formTextfield_Medium" tabindex="3">';
    break;
    case '2':
    echo '<input id="CallDesc" name="CallDesc" type="text" value="Refrigerator / Ice (Makers/Machines) / Wine Cooler" class="formTextfield_Medium" tabindex="3">';
    break;
}
?>


因为在形式I put action=“”中,PHP显然必须位于同一页面上。我应该注意到,在这种情况下,我通常会使用Javascript,如果需要动态的话,我会使用AJAX;只是因为我觉得填写表单时页面加载很烦人

在案例1的回音中,您有一个“缺失”在名称上,您的意思是什么?您能提供一个示例吗?您有;name=CallDesc“它应该是name=“CallDesc”在这种情况下可能不是问题,但它是一件会出现错误的事情抱歉,输入问题时键入错误…现在已修复。为什么会显示它?您已将类型设置为隐藏。。。设置问题时,它应该是type=“text”打字错误,它是固定的。为什么我要使用数据库来查询不会更改的静态字段?这不是在浪费数据库资源吗?我怎么能从您提供的小代码中知道它们永远不会改变呢?你可以再加一点。谁知道呢?我说过关联数组也是一种选择。如果你没有发布你的实际代码,我们真的帮不了你。您的实际代码可能有输入错误。请尝试在$POST上打印。这是代码,这就是全部内容。根据我使用的参考答案,开关盒是最好的方法。那么,打印的结果是什么?