可能是容易提问但是:
我想通过点击图片对数字进行排序。我以为我制作了一个表格并添加了一个图像场。
<form id="form1" name="form1" method="post" action="index.php">
<input name="buyuka" type="image" src="resimler/azalt.gif" />
</form>
然后我会写这些代码。
$sorgu='SELECT * FROM urunler';
if(isset($_POST['buyuka'])
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
$sonuclar=mysql_query($sorgu);
然而它没有排序。当我尝试添加提交按钮以添加图像域时,它的工作原理。所以这意味着我犯了一个非常基本的错误,但我无法找到它。
感谢您的帮助。 :)
编辑---解决了
实际上正如Pascal Martin所说:
if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
一定是这样的。谢谢:))
答案 0 :(得分:14)
只需使用var_dump()
查看$_POST
中的内容:
var_dump($_POST);
您会看到,当您使用<input type="image">
提交表单时,您会得到:
array
'buyuka_x' => string '0' (length=1)
'buyuka_y' => string '0' (length=1)
所以,没有$_POST['buyuka']
- 相反,有:
$_POST['buyuka_x']
$_POST['buyuka_y']
这意味着您的代码应该如下所示(不测试未阻止的buyuka
条目,并测试两个_x
和_y
- 我想测试一下其中一个应该足够了):
if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
在评论后进行修改:我不知道为什么就是这样 - 但是.x
和.y
是如何它是在HTML标准中定义的。
如果您查看Forms in HTML documents,然后向下滚动一下,您就可以阅读:
使用指点设备时 点击图片,表格是 提交和点击坐标 传递给服务器。
x值 以左边的像素为单位进行测量 图像和y值(以像素为单位) 从图像的顶部。
的 提交的数据包括name.x=x-value
和name.y=y-value
其中“name”是名称的值 属性,x值和y值是 x和y坐标值, 分别
在PHP中,参数名称中的点会自动替换为unerscore。
所以:
name.x
变为name_x
name.y
变为name_y
作为最后一句话的来源,您可以阅读变量From External Sources - HTML Forms (GET and POST) (引用):
变量名中的点和空格是 转换为下划线。对于
示例<input name="a.b" />
变为$_REQUEST["a_b"]
。
答案 1 :(得分:0)
如果我正确地阅读了问题,那么将图像作为表单的一部分不会自动将表单作为POST提交。该按钮使其正常工作,因为您实际上是在提交表单。
当您最初加载页面时,它将是一个GET请求,与您向我们展示的表单无关(并且您可以使用不同的名称在页面中包含许多其他表单,除非提交,否则这些表单同样无效他们自己)。当您使用按钮提交时,它会请求index.php并添加POST参数。
尝试将onsubmit="submit-form();"
添加到输入元素?
答案 2 :(得分:0)
<form id="form1" name="form1" method="post" enctype="multipart/form-data" action="index.php">
<input name="buyuka" type="image" src="resimler/azalt.gif" />
</form>
试试这个。
答案 3 :(得分:-1)
if(isset($_POST['buyuka'])
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
else
{
$sorgu='SELECT * FROM urunler';
}
试一试。
答案 4 :(得分:-2)
对于图像输入,请尝试添加ID。你有一个名字,但没有id。
替换
<input name="buyuka" type="image" src="resimler/azalt.gif" />
与
<input id="buyuka" name="buyuka" type="image" src="resimler/azalt.gif" />