Basta usar
var_dump()
para ver o que está em $_POST
:var_dump($_POST);
E você verá que, quando seu formulário for enviado usando o
<input type="image">
, você obtém:array
'buyuka_x' => string '0' (length=1)
'buyuka_y' => string '0' (length=1)
Então, não existe
$_POST['buyuka']
-- em vez disso, existem:$_POST['buyuka_x']
- e
$_POST['buyuka_y']
O que significa que seu código deve ficar assim (não testando o inexistente
buyuka
entrada e teste para os dois _x
e _y
-- Suponho que testar para um desses deve ser suficiente) :if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
Editar após os comentários: Não faço ideia por que é assim -- mas tendo um
.x
e um .y
é como é definido no padrão HTML. Se você der uma olhada em Formulários em documentos HTML , e role um pouco para baixo, você poderá ler:
No PHP, os pontos nos nomes dos parâmetros são substituídos automaticamente por e unerscore.
Então:
name.x
torna-sename_x
- e
name.y
torna-sename_y
Como fonte para essa última declaração, você pode ler Variáveis De fontes externas - Formulários HTML (GET e POST) (citando) :