我无法弄清楚发生了什么。我正在测试这个代码是否提交了表单;
if ($this->request->getMethod() === 'post')
{
}
我在下面有一个表格并且正在使用 Codeigniter4;
<!-- show the form -->
<?php
$form = array(
'class' => 'form-control border-0',
);
?>
<?= form_open('Admin/post/post_update', $form); ?>
<?= $this->include('Admin/Post/_post_form.php') ?>
<!-- show buttons -->
<div class="form-group">
<button class="btn btn-primary">Save</button>
</div>
</form>
<!-- end form here -->
出于某种原因,当我选择提交按钮并回显时
echo $this->request->getMethod();
它说 'get'
。我期待阅读'post'
。
我阅读了文档,但看不到任何可以声明提交帖子而不是获取的地方。
当我查看 html 时,它看起来是正确的,但如下所示;
<form action="https://development.example.com/Admin/post/post_create" class="form-control border-0" method="post" accept-charset="utf-8">
答案 0 :(得分:0)
更改按钮并使用 <button type="submit" class="btn btn-primary">Save</button>
另外,正如前一个用户所说,检查 method="post"
是否存在于 HTML 中。
最后,您可以使用 $_SERVER['REQUEST_METHOD']
代替 getMethod()
并发布结果吗?
答案 1 :(得分:0)
尝试按钮:
<input type="submit" class="btn btn-primary" name="submit" value="Save">
控制器:
if (isset($_POST['submit'])) {}