11.14. Wie verarbeite ich <input type="image">?Antwort von Kristian KöhntoppIn Formularen kann man statt eines SUBMIT auch ein IMAGE als Absendeknopf installieren. Dies sieht dann so aus: <input type="image" src="meinbild.png" name="sub" /> Wenn der User das Bild anklickt, werden zwei Variablen mit den Namen sub.x und sub.y erzeugt, die die Koordinaten des Klicks relativ zur linken, oberen Ecke des Bildes beschreiben. Da Variablennamen in PHP keine Punkte enthalten dürfen, wandelt PHP die Punkte in Unterstriche um. Im Beispiel bekommt man die Variablen mit den Namen $_REQUEST['sub_x'] und $_REQUEST['sub_y'] übergeben (bzw. vor PHP 4.1.0 $HTTP_GET_VARS['sub_x'], etc. oder $HTTP_POST_VARS['sub_x']). Antwort von Johannes FrömterAlternativ kann man an den Variablennamen eines <INPUT TYPE="image"> eckige Klammern [] anhängen; man erhält in PHP dann ein Array mit dem Namen des Buttons, das die Koordinaten des Klickpunktes enthält. Mehrere solcher Image-Buttons kann man als button[a][], button[b][] usw. benennen und die Werte aus den Arrays $_REQUEST['button']['a'], $_REQUEST['button']['b'] usw. auslesen. Ob ein bestimmter Button gedrückt wurde, überprüft man mit isset() : if (isset($_REQUEST['button']['b'])) (bzw. vor PHP 4.1.0 if (isset($HTTP_GET_VARS['button']['b'])) oder if (isset($HTTP_POST_VARS['button']['b']))). |
||
11.14. Wie verarbeite ich <input type="image">? http://www.php-faq.de/q/q-formular-image.html |
||
Archiv der de.comp.lang.php-FAQ Dies ist eine Archivseite von 2008 und wurde seitdem nicht geändert. Das dclp-FAQ-Team |