• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Viele hassen ihn, manche schwören auf ihn, wir aber möchten unbedingt sehen, welche Bilder Ihr vor Eurem geistigen Auge bzw. vor der Linse Eures iPhone oder iPad sehen könnt, wenn Ihr dieses Wort hört oder lest. Macht mit und beteiligt Euch an unserem Frühjahrsputz ---> Klick

Anführungszeichen in php und html

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Moin!

Ich möchte folgenden html-Code als echo in php ausgeben:
Code:
<input name='name' type='text' value='Name' 
onfocus='changeValue("Name", this);' 
onblur='changeValue("Name", this);' />
Mir stellt sich die Frage, wie ich dann mit drei verschiedenen Arten von Anführungszeichen umzugehen habe.
  1. Anführungszeichen für echo: " "
  2. für die html-Attribute: ' '
  3. und dann eine dritte Variante für die changeValue-Referenz
Wie lässt sich das Problem lösen? Kann mir jemand helfen?

Gruß zoom
 

torben1

Celler Dickstiel
Registriert
05.08.08
Beiträge
796
Zum Beispiel so

Code:
echo "<input name='name' type='text' onfocus='changeValue(⁄"name⁄",this);'onblur='changeValue(⁄"Name⁄", this);' />";

Torben
 

karolherbst

Danziger Kant
Registriert
11.05.07
Beiträge
3.878
also ich würde für php und js immer ' ' und für html immer " " verwenden. Wenn du dann aber ' in php und js ausgeben musst, einfach ein \ davor wie es torben1 schon gemacht hat, aber wenn du es lieber anders herum machen willst, dann machs halt, ich bin es so rum gewöhnt
 
  • Like
Reaktionen: zoom

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Hallo Torben,

dein Beispiel funktioniert leider nicht.
 

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Achso, es muss also ein Backslash sein. Wunderbar, dann funktioniert es auch.
Code:
echo "<input name='name' type='text' onfocus='changeValue(\"name\",this);' onblur='changeValue(\"Name\", this);' />";

Vielen Dank!
 

torben1

Celler Dickstiel
Registriert
05.08.08
Beiträge
796
Oh man sorry - was habe ich da bloß wieder getippt. War natürlich der Backslash.

Torben
 

dahui

Carmeliter-Renette
Registriert
22.10.06
Beiträge
3.303
im www zu finden unter 'escaping characters in ...'
 

janka

Wohlschmecker aus Vierlanden
Registriert
23.05.06
Beiträge
243
Vielleicht sollte man erwähnen, dass ' und " in PHP verschiedene Dinge sind.
Ausserdem verstehe ich nicht, warum du es als echo ausgibst, wo doch in deinem Beispiel keine PHP-Variable vorkommt?
 

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Besser geht das meiner Meinung nach mit Here-Docs: (Siehe http://www.php-space.info/php/space/heredoc-syntax.php)
Das scheint mir eine recht sinnvolle Methode zu sein. Die wird mir sicherlich noch helfen. Vielen Dank für den Tipp.
Vielleicht sollte man erwähnen, dass ' und " in PHP verschiedene Dinge sind.
Ausserdem verstehe ich nicht, warum du es als echo ausgibst, wo doch in deinem Beispiel keine PHP-Variable vorkommt?
Die Ausgabe erfolgt innerhalb einer if-Anweisung. Die habe ich aber nicht angegeben, weil sie ja für das Problem nicht ausschlaggebend ist.
 

Maluku

Finkenwerder Herbstprinz
Registriert
10.05.08
Beiträge
464
Die Ausgabe erfolgt innerhalb einer if-Anweisung. Die habe ich aber nicht angegeben, weil sie ja für das Problem nicht ausschlaggebend ist.

Ich bin zwar kein PHP-Programmierer aber ich hab gerüchte gehört, das das auch so geht:

Code:
<?php
if (bla) { 
?>
<input name='name' type='text' value='Name' 
onfocus='changeValue("Name", this);' 
onblur='changeValue("Name", this);' />
<?php 
}
?>
 
  • Like
Reaktionen: zoom

zoom

Antonowka
Registriert
06.03.06
Beiträge
356
Ich bin zwar kein PHP-Programmierer aber ich hab gerüchte gehört, das das auch so geht:

Code:
<?php
if (bla) { 
?>
<input name='name' type='text' value='Name' 
onfocus='changeValue("Name", this);' 
onblur='changeValue("Name", this);' />
<?php 
}
?>
Stimmt. Das geht auch.
Ich habe wieder eine Menge dazugelernt. ;)