Gebruik gewoon var_dump()
om te zien wat er in $_POST
. staat :
var_dump($_POST);
En dat zul je zien wanneer je formulier wordt verzonden met de <input type="image">
, je krijgt :
array
'buyuka_x' => string '0' (length=1)
'buyuka_y' => string '0' (length=1)
Dus er is geen $_POST['buyuka']
-- in plaats daarvan zijn er:
$_POST['buyuka_x']
- en
$_POST['buyuka_y']
Wat betekent dat je code er zo uit moet zien (niet testen voor de niet-bestaande buyuka
invoer en testen voor de twee _x
en _y
-- Ik veronderstel dat testen voor een van deze voldoende zou moeten zijn) :
if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
$sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}
Bewerken na de opmerkingen: Ik heb geen idee waarom het gaat zo -- maar met een .x
en een .y
is hoe het is gedefinieerd in de HTML-standaard.
Als je kijkt naar Formulieren in HTML-documenten , en een beetje naar beneden scrollen, kunt u lezen:
In PHP worden de punten in parameternamen automatisch vervangen door en unerscore.
Dus:
name.x
wordtname_x
- en
name.y
wordtname_y
Als bron voor die laatste verklaring kun je Variabelen lezen Van externe bronnen - HTML-formulieren (GET en POST) (citaat) :