• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Wir haben den Frühjahrsputz beendet, Ihr auch? Welches Foto zu dem Thema hat Euch dann am Besten gefallen? Hier geht es lang zur Abstimmung --> 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. ;)