http input type="image" value an php übergeben

http input type="image" value an php übergeben

Wie man value eines input type="image" an php weitergibt

Ein Bild als Schaltfläche ist doch was schönes. Aber leider klappt die Übergabe eines Wertes mittels "value" nicht so einfach beim Internet Exporer. Aber das braucht man öfter mal wenn man z.B. eine id mitsenden will.


Lösung

Üblich wäre also
<input type="image" name="id" src="edit.png" value="108" />
Aber da einige Browser das value nicht übermitteln kann man einen Umweg über ein array gehen.
<input type="image" name="id[108][]" src="edit.png" />

nun kann man über key($_POST['id']) darauf zugreifen.

Beispiel:

<form action="" method="post">
<input type="image" name="id[1][]" src="edit.png" />
<input type="image" name="id[2][]" src="edit.png" />
<input type="image" name="id[3][]" src="edit.png" />
<input type="image" name="id[4][]" src="edit.png" />
<input type="image" name="id[5][]" src="edit.png" />
</form>

<pre>
<?php
var_export($_POST);
echo "<hr /><p>" . key($_POST['id']) . "</p>";
?>
</pre>

Wie man hier schön sieht werden auch die Koordinaten sauber übertragen und man kann auf diese zugreifen.

Beispiel mit sql Abfrage

Da man das wohl hauptsächlich mit Datenbanken braucht hier ein beispiel:

<?php
$abfrage= mysql_query("SELECT * FROM tabelle");

while($row = mysql_fetch_object($abfrage))
{
echo  "<input type='image' src='drop.png' alt='Knopf'  name='id[" . $row->id . "][]' /><br />";
}

if (isset($_POST['id']))
{
$id = key($_POST['id']);
echo "Der Knopf Nummer: " . $id ." wurde gedr&uuml;ckt";
}
?>

One Response »

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *


− zwei = 7

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>