php表单中的开关大小写在提交时不更新
使用答案。我根据文本字段CallType的输入为另一个表单元素设置了一个表单元素大小写开关,如下所示:php表单中的开关大小写在提交时不更新,php,Php,使用答案。我根据文本字段CallType的输入为另一个表单元素设置了一个表单元素大小写开关,如下所示: <select id="CallType" name="CallType"> <option value="1">1</option> <option value="2">2</option> </select> 1. 2. 然后,我像这样设置case开关,但在formpost时,该值不会插入到我的数
<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上打印。这是代码,这就是全部内容。根据我使用的参考答案,开关盒是最好的方法。那么,打印的结果是什么?