当我尝试通过$ _POST检索图像坐标时,为什么会出现错误?

时间:2013-03-05 14:40:34

标签: php imagemap

在尝试处理图像映射时,如果我尝试通过$_POST检索坐标,则会出错。我不明白这个原因。

对于以下form

<form method='post' action='action_script.php'>
    <input name='coordinates' type='image' src='./rabbits.jpg' />
</form>

这是action_script.php脚本:

<?php
echo "Coordinates : {$_POST['coordinates_x']} and {$_POST['coordinates_y']} ";

此脚本抛出错误,指出coordinates_xcoordinates_y未定义。但是,如果我用$_POST替换$_REQUEST,它可以正常工作并告诉坐标。使用$_POST时为什么会出现错误?

以下脚本不会产生错误:

<?php
echo "Coordinates: {$_REQUEST['coordinates_x']} and {$_REQUEST['coordinates_y']}";

1 个答案:

答案 0 :(得分:0)

那是你的完整代码吗?您似乎没有向我们显示提交按钮等。

但重要的是,你确定一切顺利并且已经发布,从不假设任何东西,使用任意运算符来实际检查是否有任何内容发布:

$xCord = isset($_POST['coordinates_x']) ? $_POST['coordinates_x'] : false;
$yCord = isset($_POST['coordinates_x']) ? $_POST['coordinates_x'] : false;

而且,正如所指出的那样,你应该真的做像

这样的事情
$xCord = isset($_POST['coordinates']) ? $_POST['coordinates'] : false;

如果它真的可以剥离,那么这不应该破坏数据。

现在你可以实际检查它是否已成功发布,但事实证明它是错误的,那么你只是做错了。

现在回应

是有意义的
echo "Coordinates: $xCord and $yCord";

但话说回来,我觉得你的表格有点时髦。尝试这种新方法并给我们完整的代码。