Hallo,
ich lasse per PHP Javascript generieren, was an einem DIV an anderer Stelle einen HTML-formatierten Text anhängen soll.
<?php
$failure = "<b>Fehler beim Ändern des Eintrags:</b><br><br>Der Datenbankzugriff zum Update war nicht erfolgreich.<br><br>Probieren Sie die herkömmliche Bearbeitenfunktion (Über den Button mit dem Stift) und wenden Sie sich ggf. an den Admin.";
echo "<script language=\"javascript\">document.getElementById(\"status-failure\").firstChild.nodeValue = '".$failure."';</script>";
?>
Und ausgegeben wird im div mit id "status-failure":
<b>Fehler beim Ädern des Eintrags:</b><br><br>Der Datenbankzugriff zum Update war nicht erfolgreich.<br><br>Probieren Sie die herk?iche Bearbeitenfunktion (?er den Button mit dem Stift) und wenden Sie sich ggf. an den Admin.
Also "&...;" wie auch HTML-Tags werden nicht interpretiert und so ausgegeben. Eigentlich hätte ich auch gern noch ein mysql_error() eingebaut, aber dann kommt ein JavaScript-Fehler und es wird gar nichts mehr ausgegeben.
[u]Hintergrund:[/u]
Ich benutze das AJAX scriptaculous Modul InPlaceEditor, um einen Eintrag in einer Tabelle zu editieren und evtl. Fehlermeldungen beim Abspeicherns über der Tabelle anzuzeigen. (Zusätzlich benutze ich also noch display:none/block fürs div)
Mache ich etwas falsch? Oder gibt es da eine pfiffigere Methode?
Viele Grüße
Christian