php - 检查是否已收到邮寄请求

标签 php html forms button http-post

我已经创建了带有多个选项的html表单(在MyTestFile.php文件中),我想要做的是检查是否已收到发布请求。或者换句话说,当用户从我的组合框中选择某些内容并按下“Go”按钮时,它会转到同一页面并发送所选的尺寸值并回显尺寸,然后在设置尺寸后表单不再可见。所以这是我的表单代码,它并没有真正起作用:

if (isset($_POST('submit'))) {
    ?>
    <html>
    <h2>Select size:</h2>

    <form action="MyTestFile.php" method="POST">
        <div>
            <select name="SIZE">
                <option value="big">big</option>
                <option value="medium">medium</option>
                <option value="small">small</option>
            </select>
            <input type="submit" value="Go">
    </form>
    </html>
<?php
} else {
    echo $_POST('submit');
//and do some stuff here

}

主要思想:检查是否已收到带有大小的发布请求,如果没有 - 显示表单,用户可以在其中选择大小。

最佳答案

$_POST 是一个数组,因此必须使用方括号而不是括号来访问元素。所以改变这个:

if (isset($_POST['submit'])) {
//              ^        ^ square breackets not ()

其次,您的提交按钮没有名称,因此您的 isset() 检查永远不会为真。给它起个名字:

<input type="submit" name="submit" value="Go">

或者在 isset 检查中使用 SIZE 选择:

if (isset($_POST['SIZE'])) {

最后,您的 Assets 检查需要反转,以便在发布值不存在时显示表单:

if (!isset($_POST['SIZE'])) {
//  ^ not operator to reverse the check

关于php - 检查是否已收到邮寄请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23756509/

相关文章:

html - 仅在 Firefox 中有额外间距但未在检查器中显示

php - 当 url 为 'abc' 时,ajax 正在工作,而当 urs 为 'abc/2' 时,ajax 在 laravel 中不起作用

php - 失去与 MySQL 服务器的连接,系统错误 : 111

php - 为什么我的 symfony 路由不起作用?

php - 如果某个类别中没有帖子,如何隐藏它

php - 使用 Cookie 预填充 PHP 表单

javascript - -webkit-transform CSS 属性在 IronPdf 中不起作用

html - chrome 中 <a> 标签后的边距不均匀

c# - 如何从 WPF 表单中删除边框/控制框?

mysql - 有没有可以从数据库字段自动生成html表单的工具