Mysql
 sql >> Base de données >  >> RDS >> Mysql

Impossible de trouver une entrée type=valeur d'image dans $_POST

Utilisez simplement var_dump() pour voir ce qu'il y a dans $_POST :

var_dump($_POST);

Et vous le verrez, lorsque votre formulaire sera soumis à l'aide du <input type="image"> , vous obtenez :

array
  'buyuka_x' => string '0' (length=1)
  'buyuka_y' => string '0' (length=1)


Donc, il n'y a pas de $_POST['buyuka'] -- à la place, il y a :

  • $_POST['buyuka_x']
  • et $_POST['buyuka_y']

Ce qui signifie que votre code devrait ressembler à ceci (ne testant pas le buyuka inexistant entrée et test pour les deux _x et _y -- Je suppose que tester l'un d'entre eux devrait suffire) :

if(isset($_POST['buyuka_x'], $_POST['buyuka_y']))
{
    $sorgu='SELECT * FROM urunler ORDER BY uyeno DESC';
}


Modifier après les commentaires : Je n'ai aucune idée de pourquoi ça se passe comme ça -- mais avec un .x et un .y c'est ainsi qu'il est défini dans la norme HTML.

Si vous jetez un œil à Formulaires dans les documents HTML , et faites défiler un peu, vous pourrez lire :

En PHP, les points dans les noms des paramètres sont automatiquement remplacés par et unerscore.
Donc :

  • name.x devient name_x
  • et name.y devient name_y

Comme source pour cette dernière déclaration, vous pouvez lire Variables À partir de sources externes - Formulaires HTML (GET et POST) (citant) :