Anführungszeichen
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
attribut
ausprobieren
aussuchen
beispiel
code
editor
erfahrenen programmierer
farbe
frage
funktion
http
jahr
konstanz
letzte zeile
problem
punkt
sagen
stil
text
url
-
Hallo liebe Community,
mit 4 Jahren Webprogrammiererfahrung sehe ich mich eigentlich schon als einen Erfahrenen Programmierer. Leider habe ich mit PHP EIN Problem: die Anführungszeichen.
also:
$text = "<input type='text'></input>";
ist noch kein problem: erst ' dann "
oder halt
$text = 'input type="text"></input>';
also eine zweifache verschachtelung ist bei mir noch kein Problem. Aber bei der dreifachen Verschachtelung wird es schon komplizierter:
$text = "<input type='text' onclick='bsponclick([b]".[/b]Text[b]." [/b])'></input>";
ich kann mir einfach nicht merken, wann ein Punkt, wann ein ' wann ein ' " .... kommt. Gibt es da irgendeinen Merksatz o.ä.?
Selbst google war da nie ergiebig :( -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Denke einfach mal so, wie ein Rechner, der liest in deinem Beispiel:
$text = "<input type='text' onclick='bsponclick([b]".[/b]Text[b]." [/b])'></input>";
$text = "[1]" . [/b]Text[b] . "[2]";
[1] = <input type='[3]' onclick='bsponclick([b]
[2] = [/b])'></input>
(Wenn ich das richtig sehe)[3] = text
Guck auch mal hier:
http://www.php-faq.de/q-stil-anfuehrungszeichen.html -
*g* srry. Das solltet ihr euch wegdenken. Wusste nicht, dass er das so schlecht highlighted....
@drafed-map: Ich hab eclipse für Windows und bin eigentlich recht zufrieden damit :)
(was sollte mir das bringen?)
$text = "<input type='text' onclick='bsponclick(".Text.")'></input>";
$text = '<input type="text" onclick="bsponclick('.Text.')"></input>';
also ich sollte erstmal fragen, ob der oben genannte Quellcode überhaupt funktioniert...
-
Ich arbeite zwar unter Linux, aber habe auch Eclipse. Die PHP-Version von Eclipse. Bei mir sieht das so aus: http://drafed-map.lima-city.de/im_lc-forum/code.png. Da es grün ist sehe ich "aha, Text!". Das was schwarz ist ist nicht in dem Text drinnen. Es muss also ein Konstanz oder eine Variable sein. Da ich aber weder eine Dollarzeichen sehe, der Text nicht braun markiert ist (so sehen Variablen aus) und da ich keine Konstanze namens Text habe, weis ich, dass hier ein Fehler vorliegt. In Eclipse kann man sich die Farben aussuchen, bei dir könnten es also andere Farben sein.
-
Ich weiß es, ich weiß es...
Sowas sollte man mit 4 Jahren "Webprogrammiererfahrung" aber schon sehen.
Wenn du einen String an eine Javascript-Funktion ohne ' oder " übergibst, funktioniert das Ganze auch nicht.
Beispiel wie es Funktioniert:
$text = "Ich bin ein Testtext..."; echo "<input type='text' onclick='alert(\"".$text."\");'>";
Gruß,
dex
PS:
</input> gibt es nicht.
Edit: War auch nicht böse gemeint, wollte nur klugscheißen
Beitrag zuletzt geändert: 20.2.2010 23:22:43 von qap2 -
@drafted-map:
danke, das wäre eine Möglichkeit, wie ich vorgehe.... aber warum wird dann ein wert OHNE anführungszeichen nicht in die funktion übergeben?
so würde es dann aussehen:
$text = "<input type='text' onclick='bsponclick(Text)'>";
aber in der:
function bsponclick(Text)
{
alert(Text);
}
Ich weiß es, ich weiß es...
Sowas sollte man mit 4 Jahren "Webprogrammiererfahrung" aber schon sehen.
Ich weiß, genau daswegen frage ich ja jetzt. Weil ich immer wieder ausprobieren muss...
$text = "Ich bin ein Testtext...";
echo "<input type='text' onclick='alert(\"".$text."\");'>";
jup. So hätte ich das auch gemacht, wenn ich nicht alles in einem übergeben möchte... Wie würdest du das jetzt in einem zusammenfassen?
genau das ist ja mein Problem gerade: ich will nicht alles auseinanderpflücken (und später halt in der Funktion attribute von einem anderen Text übergeben... (also gerade alles nur geteste))
PS:
stimmt... ist schon spät aber nebensächlich... ist ja ein "kann" attribut ;) -
<input type='text' ... ist schlecht (auch dann, wenn es da >http://www.php-faq.de/q-stil-anfuehrungszeichen.html< (blaues kasterl letzte zeile) so steht, mal bei w3c validieren!! - bei uralthtml ist noch in ordnung ja sogar ganz und gar ohne '!) richtig heißt es: <input type="text" und wie du das 'einbettest' ist dein prob.
und das onclick="bsponclick('.Text.')" ergibt unter php "Notice: Use of undefined constant Text - assumed 'Text' in /<path>/<file>.php on line #"
schlich und ergreifend geht aber: onclick="bsponclick('Text')" (also ohne punkt). könnte allerdings auch stehen: onclick="bsponclick(\"Text\")" (also 'falsche schachtelung' escaped ;o). -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage