verarbeitung von "ismap" (in html img tag) in php

soox

New member
habe folgenden code in meiner angezeigten html seite
<a href="test2.php?dev_id=9"><img src="./img_test/test.php" ismap></a>

wenn ich nun auf die image_map klicke bekomme ich in der browser adresszeile
http://*blabla*/test2.php?dev_id=9?28,245
angezeigt

in php habe ich nun
$_GET["dev_id"]='9?28,245'

hat wer ne schlaue idee wie ich diese koordinaten in eine variable bekomme?
 

ivegotmail

Member of Honour
Code:
$dev_id = $_GET['dev_id'];
$paramarray = explode('?', $QUERY_STRING);
$koordinaten = explode(',', $paramarray[1]);
$x = $koordinaten[0];
$y = $koordinaten[1];
dann müsstest du diese ziele
<a href="test2.php?dev_id=9"><img src="./img_test/test.php" ismap></a>
aber mal in diese ändern
<a href="test2.php?dev_id=9&"><img src="./img_test/test.php" ismap></a>
also mit nem kaufmannsund hinter der 9, sonst bekommst du $dev_id mit $_GET[] nicht richtig

oder du machst es besser gleich so
<a href="test2.php?9"><img src="./img_test/test.php" ismap></a>
und dann holst beides (id und koordinaten) via explode aus dem query string
dann hast du nicht so ein mischmasch

übrigens hast du in deinem beispiel einmal id und einmal dev_id benutzt
also pass auf, falls das in deinem skript auch unterschiedlich sein sollte
 

soox

New member
das mit dem explode funktioniert zwar....aber da ich nicht immer nur "dev_id" zusaetzlich zu den koordinaten uebergeben will, kann ich nicht genau vorhersagen, in welcher dieser variabeln dise koordinaten sind.

wenn ich ich den link auf <a href="test2.php?dev_id=9"> aendere hab ich eine zusaetzliche get wariable namens
$_GET['?*x*,*y*']
da die koordinaten nicht fest definiert sind, habe ich ja ein problem mit dem ansprechen dieser variable.

übrigens hast du in deinem beispiel einmal id und einmal dev_id benutzt
also pass auf, falls das in deinem skript auch unterschiedlich sein sollte
uuupppsss....moment....wo, sehe nichts :D
 

ivegotmail

Member of Honour
na du kannst ja trotzdem den querystring mit '?' exploden und dann nimmst du das letzte arrayfeld und das sind dann garantiert die koordinaten, egal wieviel parameter davor kommen, denn am ende wird ja immer ?x,y angehängt

uuupppsss....moment....wo, sehe nichts :D
:p
 

soox

New member
thx @ivegotmail

ok, mache es nun so:

der link hat nun am ende ein zusaetzliches & bekommen.

danach habe ich folgenden code
Code:
end($_GET);
$koord = key($_GET);

//und danach mit explode und co filtern
 
Oben