PHP:通过图像提交按钮传递选择和隐藏输入的值

问题描述 投票:1回答:1

我有一个表包含从数据库中检索到的订单数据,并且有一个名为“status”的字段包含一个带有select选项的表单和一个带有订单ID值的隐藏输入..表单没有的问题似乎将数据传递给将运行该函数的php文件。

我尝试了POST和GET方法以及我注意到的数据是通过导致php文件但带有空白页面的URL传递的。

这是显示参数的URL:

http://localhost/project_name/test2.php?submit.x=15&submit.y=22&status=new&orderId=190406053842

这是我的HTML表单

<td>
        <form action="test2.php" method="GET">
        <input type="image" name="submit" src="icons/submit.png" alt="Submit" style='width:30px;height:30px;border:0;' onclick="confirm('are you sure?')"> 
        <select name="status">
            <option value="new">new</option>
            <option value="checking">checking</option>
            <option value="processing">processing</option>
            <option value="done">done</option>
          </select>
          <input type="hidden" name="orderId" value="<?php echo $row["ORDER_ID"]; ?>">
          </form>
</td>

这是php文件(只是回显结果以确保它可以正常工作并继续)

    <?php
    $db = mysqli_connect('localhost', 'root', '', 'project_name');


            if(isset($_GET['submit'])){
                $status = $_GET['status'];
                $ID = $_GET['orderId'];

    echo $staus;
    echo $ID;
}
    ?>  

谢谢。

php
1个回答
2
投票

如果你查看你的GET URL字符串,就没有'submit'变量,所以检查'submit'变量是行不通的。

看起来它正在向'submit'变量添加坐标,因此它实际输出'submit.x'和'submit.y'。我之前从未使用过图像输入类型,因此只能猜测这是此输入类型的预期功能。

你可以通过检查'orderID'而不是'submit'来解决这个问题。或者您可以尝试'submit.x'或'submit.y'。

© www.soinside.com 2019 - 2024. All rights reserved.