gpt4 book ai didi

php - $_SERVER ['REQUEST_METHOD' ] == 'POST' 即使没有提交也被设置

转载 作者:行者123 更新时间:2023-12-01 04:03:54 25 4
gpt4 key购买 nike

我有一个包含 2 个表单的页面。这是为了使用 PHP/PDO 插入数据库。我面临的问题是,即使我没有按下提交按钮,插入页面上的 IF 语句也会产生错误。已尝试使用 $_POST isset/!==0 等多种方法。到目前为止还没有运气。

jQuery/FORM 组合有问题吗?也许这会触发 $_POST?

用于选择表单的 jQuery:

<script type="text/javascript">
$(document).ready( function() {
$('#formSel').change( function() {
var id = $(this).val();
if( id != '-' )
{
$('form').hide();
$('#form'+id).show();
//$('#myModal').modal('show');
}
});
});
</script>

表单设置如下:

<div>
<select class="form-control input-small" id="formSel">
<option value="-">Choose category</option>
<option value="One">One</option>
<option value="Two">Two</option>
</select>
</div>

<!-- Form One -->
<form id="One" style="display:none" method="POST" action="insert.php">
<input type="text" id="aaa" placeholder="aaa">
<input type="text" id="bbb" placeholder="bbb">
<button type="submit" value="btn-One">Submit</button>
</div>

<!-- Form Two -->
<form id="One" style="display:none" method="POST" action="insert.php">
<input type="text" id="ccc" placeholder="ccc">
<input type="text" id="ddd" placeholder="ddd">
<button type="submit" value="btn-Two">Submit</button>
</div>

为了插入数据,我有第二个页面 (insert.php),其中包含 PHP/PDO。这被设置为在按下提交按钮时执行:

if ($_SERVER['REQUEST_METHOD'] == 'POST' && (!empty($_POST['btn-One']))) {
//execute code
}
else {
echo 'Error submit One';
}

if ($_SERVER['REQUEST_METHOD'] == 'POST' && (!empty($_POST['btn-Two']))) {
//execute code
}
else {
echo 'Error submit Two';
}

我没有任何想法和技能来找到解决方案。希望有人能够发现触发表单的原因。

最佳答案

您可能缺少name在您的表格中并替换 </div></form> 。还有表单 ID!

<div>
<select class="form-control input-small" id="formSel" name="formSel">
<option value="-">Choose category</option>
<option value="One">One</option>
<option value="Two">Two</option>
</select>
</div>

<!-- Form One -->
<form id="formOne" style="display:none" method="POST" action="insert.php">
^
<input type="text" id="aaa" name="aaa" placeholder="aaa">
^
<input type="text" id="bbb" name="bbb" placeholder="bbb">
^
<button type="submit" value="btn-One" name="btn-One">Submit</button>
^
</form>
^^^^^^^

<!-- Form Two -->
<form id="formTwo" style="display:none" method="POST" action="insert.php">
^
<input type="text" id="ccc" name="ccc" placeholder="ccc">
^
<input type="text" id="ddd" name="ddd" placeholder="ddd">
^
<button type="submit" value="btn-Two" name="btn-Two">Submit</button>
^
</form>
^^^^^^^

关于php - $_SERVER ['REQUEST_METHOD' ] == 'POST' 即使没有提交也被设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33954818/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com