PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : PHP variablen an java function übergeben (onmouseover)


Vakuum
18.11.2006, 19:39:08
Hi,

hoffe ich finde hier hilfe, denn ich habe mir seit gestern morgen den kopf daran gestossen.
hier den code...

<?php

echo '<img src="../ingame/images/bild.jpg" usemap="#Map" />';

$test1 = mysql_query("SELECT * FROM test");
while ($test2 = mysql_fetch_assoc($test1))
{
$test[] = $test2;
}

$i = 0;
echo '<map name="Map" id="Map">';
foreach($test as $index) {

$name = $index['name']; //text
$fact1 = $index['fact1']; //zahl
$fact2 = $index['fact2']; //zahl
$fact3 = $index['fact3']; //zahl
echo '<area shape="circle" coords="' . $index['x'] . "," . $index['y'] . ", 3" . '" ' .
'href="javascript:document.forms[' . $i . '].submit()"' .
'title="'. $index['name'] . '" alt="bild"' .
'onMouseover="info(' . $fact1 . "," . $fact2 . "," . $fact3 . "," . $name . ')">';
echo '<form name="select" method="POST" action="link"><input type="hidden" name="bla" value="' . $index['bla'] . '"></form>';
$i++;
}
echo '</map>';
?>

<script type="text/javascript"><!--
function info(fact1, fact2, fact3, name){

alert(name);
alert(fact1);
alert(fact2);
alert(fact3);
}
//--></script>


was ich eigentlich will, bzw. mein einziges problem ist, dass ich $name nicht bei...
onMouseover="info(' . $fact1 . "," . $fact2 . "," . $fact3 . "," . $name . ')">';
mit übergeben kann, fact1, 2, 3 gehn... weils zahlen sind... $name ist jedoch text und das will der mir net nehmen. hoffe ihr habt hierzu eine lösung, ist zum verzweifeln.

Grüsse
Vakuum

Andes
18.11.2006, 19:44:56
Strings musst du in einfache Anführungszeichen setzen.

onMouseover="info(1, 2, 3, 'name')">

Vakuum
18.11.2006, 19:54:00
Hi Andes,

dank dir für die schnelle antwort, jedoch...

onMouseover="info(' . $fact1 . "," . $fact2 . "," . $fact3 . "," . '$name' . ')">';

funktioniert leider auch nicht. könnte es damit was zu tun haben dass es eine variable ist?
meine kenntnisse von php geschweige denn von javascript sind leider sehr minim :(

Grüsse
Chris

Nachtrag: es wird mir keines der 4 alerts ausgegeben bei mouseover :(
ohne $name gehts und funktionert einwandfrei mit den 3 fact variablen.

Andes
18.11.2006, 20:04:30
Ist auch klar warum. Das sollte dann so aussehen.


onMouseover="info(' . $fact1 . "," . $fact2 . "," . $fact3 . ",'" . $name . "')\">';

Vakuum
18.11.2006, 20:27:40
onMouseover="info(' . $fact1 . "," . $fact2 . "," . $fact3 . ", '$name'" . ')">';

so, jetzt funktionierts, ich danke dir vielmals für deine hilfe, find ich super dass du dir die zeit genommen hast und mir beim lösen dieses problems wo ich in etwa scho 12 std. drannen war geholfen hast.

Liebe Grüsse
Chris

Andes
18.11.2006, 22:41:15
Das letzte doppelte Anführungszeichen muss maskiert werden. Das ist bei meinem Beitrag mit PHP nicht angezeigt wurden. Hab es oben editiert.