allgemeine Frage zur Notation mit Anführungszeichen
Encoder
- html
0 suit3 EKKi- programmiertechnik
Hallo
Bin gerade an folgendem Konstrukt am überlegen.
(PHP)
print "<a onclick='jsFunktion();'>Link</a>";
Mal einfache, mal doppelte Anführungszeichen, das funktioniert ja. Aber wenns dann gleich 3 Schachtelungstiefen sind so wie zum Beispiel hier?
print "<a onclick="jsFunktion("Parameter");" />Link</a>";
Wie behilft man sich bei sowas?
Davon abgesehen dass man etwas wie print <<<END nutzen könnte.
Wie behilft man sich bei sowas?
Ach komm - jetzt bringst du uns aber zum weinen:
http://php.net/manual/de/language.types.string.php
So schlimm wollte ich euch ja auch wieder nicht treffen.
Ich weiß schon dass die die mittleren so maskieren kann
print "<a onclick="jsFunktion(...);" />Link</a>";
Aber spätestens bei den inneren gehts nimmer, ich hab folgendes versucht (direkt in HTML, ohne php)
<a onclick="jsFunktion("Parameter");" />Link</a>
das ist aber ungültig. Auch mit & wirds nicht angenommen, gibt Syntaxfehler in Javascript. Ich müsste hier doppelte und einfache Anführungszeichen verwenden und da könnts ja sein dass es eine empfohlene Vorgehensweise gibt, wie man sich da möglichst keine Probleme einhandelt.
Mahlzeit Encoder,
Aber spätestens bei den inneren gehts nimmer, ich hab folgendes versucht (direkt in HTML, ohne php)
<a onclick="jsFunktion("Parameter");" />Link</a>
das ist aber ungültig.
Klar. Was genau sollen denn auch " in HTML bedeuten? Nutze einfach für die Begrenzung von Attributswerten in HTML einerseits und für die Notation von Strings in Javascript andererseits unterschiedliche Anführungszeichen - fertig.
Wenn das ganze Geraffel jetzt per PHP ausgegeben wird, sollte es eigentlich relativ klar sein, *welche* der Anführungszeichen Du *in PHP* korrekt escapen solltest. Wenn nicht: informiere Dich!
MfG,
EKKi
Hallo,
Klar. Was genau sollen denn auch " in HTML bedeuten? Nutze einfach für die Begrenzung von Attributswerten in HTML einerseits und für die Notation von Strings in Javascript andererseits unterschiedliche Anführungszeichen - fertig.
hmm, der Parameter, der der Javascriptfunktion übergeben werden muss, ist der Nickname eines Teilnehmers hier:
Timo "God's Boss" Reitz
Wenn das ganze Geraffel jetzt per PHP ausgegeben wird, sollte es eigentlich relativ klar sein, *welche* der Anführungszeichen Du *in PHP* korrekt escapen solltest. Wenn nicht: informiere Dich!
das kann ich nur unterstreichen.
Freundliche Grüße
Vinzenz
Mahlzeit Encoder,
print "<a onclick="jsFunktion("Parameter");" />Link</a>";
Wie behilft man sich bei sowas?
Indem man sich zum Thema "Kontextwechsel" informiert ...
MfG,
EKKi