Verwenden Sie einfach var_dump()
um zu sehen, was in $_POST steht :
var_dump($_POST);
Und das sehen Sie, wenn Ihr Formular mit <input type="image"> gesendet wird , erhalten Sie :
array
'buyuka_x' => string '0' (length=1)
'buyuka_y' => string '0' (length=1)
Also gibt es kein $_POST['buyuka'] -- stattdessen gibt es :
$_POST['buyuka_x']- und
$_POST['buyuka_y']
Das bedeutet, dass Ihr Code so aussehen sollte (testet nicht auf das nicht vorhandene buyuka Eintrag und Prüfung auf die beiden _x und _y -- Ich nehme an, dass das Testen auf eines davon ausreichen sollte) :
if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
Nach den Kommentaren bearbeiten : Ich habe keine Ahnung warum es geht so -- aber mit einem .x und ein .y ist im HTML-Standard definiert.
Wenn Sie sich Formulare in HTML-Dokumenten ansehen , und scrollen Sie ein wenig nach unten, dann können Sie Folgendes lesen:
In PHP werden die Punkte in Parameternamen automatisch durch und unterstrichen ersetzt.
So :
name.xwird zuname_x- und
name.ywird zuname_y
Als Quelle für diese letzte Aussage können Sie Variablen lesen Aus externen Quellen - HTML-Formulare (GET und POST) (Zitat) :