PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Backslah mit Anführungszeichen in String ausgeben


wollenschlaeger
13.12.2004, 09:25:04
Hallo,

ich habe folgendes Problem. Ich möchte in ein Formular ein Kalenderjavascript einbauen, Doch leider wird es von PHP nicht richtig übergeben:

$adresse .= "<script language='javascript'>n";
$adresse .= "<!--n";
$adresse .= "if (!document.layers) {n";
$adresse .= "document.write("<button type=button name=kal1 onclick='popUpCalendar(this, form1.datum, "dd.mm.yyyy")'><img src='images/calendar_trans.gif' height=20></button>");";
$adresse .= "}n";
$adresse .= "//-->n";
$adresse .= "</script>n";


Bei der Passage "dd.mm.yyyy" muss das " komplett übergeben werden. Wenn ich allerdings \" schreibe, bekomme ich ein Stringfehlermeldung. Übergebe ich einfach nur " funktioniert das JavaScript nicht.

Speichere ich das JavaScript direkt in der Ausgabeseite mit HTML-Formatierung, dann funktioniert es einwandfrei.

Danke für jede Hilfe.

Grüsse

xabbuh
13.12.2004, 09:28:12
Poste bitte mal, wie das Ganze hinterher als HTML-Quelltext aussehen soll. Verstehe dein Problem so noch nicht ganz.

feuervogel
13.12.2004, 09:32:14
vielleicht \" ?

wollenschlaeger
13.12.2004, 09:51:34
Hi,

als HTML soll es so aussehen:

<td>Datum</td>
<td>
<input type="text" name="datum" value="<?PHP echo $datum?>">
<script language='javascript'>
<!--
if (!document.layers) {
document.write("<button type=button name=kal1 onclick='popUpCalendar(this, form1.datum, "dd.mm.yyyy")' ><img src='images/calendar_trans.gif' height=20></button>");
}
//-->
</script>
</td>

wollenschlaeger
13.12.2004, 09:55:34
Ich danke dir Feuervogel. Scheinbar muss ich tatsächlich drei machen damit " übergeben wird.

Und jetzt auch logisch (Vielleicht eine Erklärung für nachfolgende Leser):

ist eigentlich ein Vorzeichen für ein nachfolgendes nicht zu verarbeitendes Zeichen, das eine gesonderte Verarbeitung von PHP verdient.

wenn ich also schreibe, dann ignorieret er das zweite und bei " benötigt sowohl der Backslash sowie das Anführungszeichen diese Ignoration.


Vielen Dank

Es funktioniert

xabbuh
13.12.2004, 09:59:57
Original geschrieben von wollenschlaeger
Und jetzt auch logisch (Vielleicht eine Erklärung für nachfolgende Leser):

ist eigentlich ein Vorzeichen für ein nachfolgendes nicht zu verarbeitendes Zeichen, das eine gesonderte Verarbeitung von PHP verdient.

wenn ich also schreibe, dann ignorieret er das zweite und bei " benötigt sowohl der Backslash sowie das Anführungszeichen diese Ignoration.
Und dann auch noch richtig erklärt ;-)

wollenschlaeger
13.12.2004, 10:23:31
Danke