什么图像被按下(形式)

时间:2016-06-17 02:40:04

标签: php html

所以我的这个表单只包含几个<input type="image">,但是我无法检索压缩的图像。例如:

<form method="post">
    <input type="image" src="y1.jpg" name="y1">
    <input type="image" src="y2.jpg" name="y2">
</form>

<?php
    if(isset($_POST['y1'])) {
        //Pressing the first image does not return this
        echo "You've pressed image y1!";
    }
    if(isset($_POST['y2'])) {
        //Pressing the second image does not return this
        echo "You've pressed image y2!";
    }
?>

我猜问题就在于每个图像中的某个位置,就像同一个表单的个别提交按钮一样,但每个图像的一个表单对我来说听起来不好。

我知道可能遗漏了一些非常愚蠢的事情,我很抱歉。任何帮助将非常感激。感谢。

4 个答案:

答案 0 :(得分:2)

你可以这样说: -

<?php

    if(isset($_POST['y1'])) {
        //Pressing the first image does not return this
        echo "You've pressed image y1!";
    }
    if(isset($_POST['y2'])) {
        //Pressing the second image does not return this
        echo "You've pressed image y2!";
    }

?>
<form method="post">
    <input type="image" src="y1.jpg" value="1" name="y1">
    <input type="image" src="y2.jpg" value="1" name="y2">
</form>

你只需要在输入中输入值

答案 1 :(得分:0)

您可以使用var_dump($ _ POST)来检查收到的内容。 如果图像输入没有值,则将您在图像中单击的位置发送到带有_x,_y后缀的服务器。

如果你只想识别你点击的内容,可以像MuthaFury一样添加值。

答案 2 :(得分:0)

您的输入类型是图像,因此您可以轻松检查,因为输入名称变为name_x和name_y

if(isset($_POST['y1_x'], $_POST['y1_y']))
if(isset($_POST['y2_x'], $_POST['y2_y']))

答案 3 :(得分:0)

由于您没有分配value属性,因此密钥存在于$_POST数组中,但实际上内容为空

设置值或检查密钥是否存在。

if(key_exists('y1', $_POST))