echo mouseover Fehler

dsNDesign

Erfahrenes Mitglied
Hi,
zu aller erst mein Quelltext:
im head:
PHP:
<script type="text/javascript">
function wechsel(texta,textb){
document.getElementById("aktuelles_text").firstChild.nodeValue=texta;
document.getElementById("aktuelles_sub").firstChild.nodeValue=textb;
}
</script>

im body:
PHP:
<?php include_once("db.php"); 
			
			$sql = " SELECT * FROM aktuelles ORDER BY id DESC";
			$result = mysql_query($sql);
			while($row = mysql_fetch_assoc($result)) { 
	   		echo '<img alt="" class="aktuelles_bild" onmouseover="wechsel('bild 1 text 1','bild 1 text 2');" src="image/aktuelles/aktuelles_1.png">';} ?><div id="aktuelles_text">.</div><div id="aktuelles_sub">.</div>

Wenn ich die Datei nun öffnen will, kommt immer folgender Fehler:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /**/index.php on line 71

Ich vermute, dass es an diesem Bereich liegt: 'bild 1 text 1','bild 1 text 2'

Wenn ich den mouseover nicht in PHP ausführe, also ganz normal, funktioniert es ohne Probleme.

Gruß
 
Die Zeile ist falsch
PHP:
echo '<img alt="" class="aktuelles_bild" onmouseover="wechsel('bild 1 text 1','bild 1 text 2');" src="image/aktuelles/aktuelles_1.png">';}

Strings escapen und Klammern richtig setzen:
PHP:
echo '<img alt="" class="aktuelles_bild" onmouseover="wechsel(\'bild 1 text 1\',\'bild 1 text 2\');" src="image/aktuelles/aktuelles_1.png">}';


Ich empfehle dir einen Editor mit Syntaxerkennung wie Eclipse PDT
 
Hi, ich stehe nun vor einem neuen Problem.
Ich habe das ganze um 1 Feld erweitert.

Der Wechsel funtkioniert auch. Mein Vorhaben ist, in das 3. Feld ein Bild einzufügen.
So sieht es aus:
PHP:
echo '<img alt="" class="aktuelles_bild" onmouseover="wechsel(\''.$row['titel'].'\',\'veröffentlicht am '.$row['tag'].'. '.$row['monat'].' '.$row['jahr'].' in '.$row['kategorie'].'\',\'<img src='image/zumartikel.png' />\');" src="bilder/'.$row['small_bild'].'">';

Jedoch bekomme ich immer folgenden Fehler:
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in /var/www/web34/html/jungeunion/index.php on line 72

Habe es auch schon mit " versucht, jedoch führt das dazu, dass folgendes ausgegeben wird:
');" src="bilder/adresse.png">

Dies ist der Teil von dem Bild, welches den mouseover "auslösen" soll.
 
Im folgenden Teil die ' escapen oder durch " ersetzen
PHP:
 echo '........<img src='image/zumartikel.png' />......';
//so
 echo '........<img src=\'image/zumartikel.png\' />......';
//oder so
 echo '........<img src="image/zumartikel.png" />......';
 
wenn ich sie escape, funktioniert der mouseover garnicht mehr.
Und wenn ich die ' mit " ersetze, erscheint, wie bereits gesagt nur: ');" src="bilder/adresse.png">
 
einmal so (mit "):
HTML:
<img alt="" class="aktuelles_bild" onmouseover="wechsel('News Text!','veröffentlicht am 04. September 2010 in Allgemein','<img src="image/zumartikel.png" />');" src="bilder/aktuell1.png" />

und escaped:
HTML:
<img alt="" class="aktuelles_bild" onmouseover="wechsel('News Text!','veröffentlicht am 04. September 2010 in Allgemein','<img src='image/zumartikel.png' />');" src="bilder/aktuell1.png" />
 
Beides ist falsch!
Beim ersten schließt du mit dem " das onmouseover-Attribut.
Beim zweiten schließt du mit dem ' den zweiten Parameter deiner Funktion!

Probier mal folgendes:
PHP:
echo "<img alt=\"\" class=\"aktuelles_bild\" onmouseover=\"wechsel('".$row['titel']."','veröffentlicht am ".$row['tag'].". ".$row['monat']." ".$row['jahr']." in ".$row['kategorie']."','<img src='image/zumartikel.png' />');\" src=\"bilder/".$row['small_bild']."\">";
 
damit geht der mouseover wieder nicht.
Quelltext:
HTML:
<img alt="" class="aktuelles_bild" onmouseover="wechsel('News Text!','veröffentlicht am 04. September 2010 in Allgemein','<img src='image/zumartikel.png' />');" src="bilder/aktuell1.png">
 
Sorry, mein Fehler. Folgendes müsste aber jetzt gehen:
PHP:
echo "<img alt=\"\" class=\"aktuelles_bild\" onmouseover=\"wechsel('".$row['titel']."','veröffentlicht am ".$row['tag'].". ".$row['monat']." ".$row['jahr']." in ".$row['kategorie']."','<img src=\"image/zumartikel.png\" />');\" src=\"bilder/".$row['small_bild']."\">";
 
Zurück