Php 在表单操作中从输入插入变量

Php 在表单操作中从输入插入变量,php,forms,Php,Forms,我有一个表单,可以向用户查询他想要查看的列表类型。当按下submit按钮时,我希望能够在地址中显示值listtype,以便使用GET方法访问它,例如更改正在显示的列表页面。在此表单中,我尝试了以下代码: <?php echo '<form method=post action="index.php?operacao=checkList&number=1&pagesize=10&listtype=', $_GET['listtype'] ,'" name

我有一个表单,可以向用户查询他想要查看的列表类型。当按下submit按钮时,我希望能够在地址中显示值listtype,以便使用GET方法访问它,例如更改正在显示的列表页面。在此表单中,我尝试了以下代码:

<?php
    echo '<form method=post action="index.php?operacao=checkList&number=1&pagesize=10&listtype=', $_GET['listtype'] ,'" name="listForm">
    <ol>

        <li><label for="listtype">Type:</label>
        <select name="listtype">
        <option value="default">Select</option>
        <option value="doctor">Doctor</option>
        <option value="nurse">Nurse</option>
        <option value="patient">Patient</option>
        </select></li>

        <div id="form-button">
            <li><input type="submit" value="Submit" onclick="javapopup();"></li>
        </div>

    </ol>
    </form>';
?>


尽管如此,当我打开表单时,我得到一个错误,表明变量
listtype
未定义。如何解决此问题?

$\u GET['listtype']
不会在您第一次加载此页面时进行设置,这就是为什么会出现此错误。在使用它之前,您需要检查它是否已设置,如果未设置,则在这种情况下不使用它。在您的情况下,由于表单设置为POST,它将永远不会填充
$\u GET
超全局,这将导致此错误永远不会消失

echo '<form method=post action="index.php?operacao=checkList&number=1&pagesize=10&listtype=', $_GET['listtype'] ,'" name="listForm">

您的
未定义错误消息可能是由未命名变量引起的。例如:
$var=$\u GET['var']
我们需要查看您的PHP处理程序。因此,使用
post
作为表单方法并不重要?实际上,这是他们面临的另一个问题。让我来解决这个问题。我知道表单方法有更多的东西,这就是为什么我不想把它作为一个实际的答案。像这样的问题似乎总是会像人们所同意的那样,打开一罐虫子。一旦我在一个代码片段中看到两个以上的问题,我就投票结束,因为我还不知道他们在做什么。OP有一些JS正在发生
javapopup()
,可能正在查询数据库。我们知道的下一件事是,回来说“它仍然不起作用……我的信息现在没有显示等等”的风险。是的,经常看到它,投票结束通常是最好的做法,直到我们知道一切。
$listype = (isset($_POST['listtype'])) ? $_POST['listtype'] : '';
echo '<form method=post action="index.php?operacao=checkList&number=1&pagesize=10&listtype=', $listype ,'" name="listForm">
$listype = (isset($_POST['listtype'])) ? htmlspecialchars($_POST['listtype']) : '';
echo '<form method=post action="index.php?operacao=checkList&number=1&pagesize=10&listtype=', $listype ,'" name="listForm">