php - Subject mit Mehreren Woerter - Erscheint nur das erste Wort beim Ausspucken

DualityMind

Lieutenant
Registriert
Dez. 2015
Beiträge
768
Hallo

Habe da ein kleines Problem und zwar.

Ich habe eine MySQL Datenbank mit einer Liste diverser Spiele.

z.B. ID=1 und Subject="Dies ist ein Test"
$result=mysql.....etc....!

$subject=$row[subject];

in der Input Form z.b. <input type=text name=subject value=$subject></input>

Leider Zeigt es mir in der Input per Value nur "Dies" an ohne "ist ein Test", jetzt weiss ich nicht wie man das
Lösen kann mit z.B. Trim etc...!

Komischerweise hat es mal geklappt, aber habe alles schon versucht, er spuckt immer nur das 1. Wort aus.

Ich hoffe es kann mir bitte hilfreich sein, sollte kein so grosses Problem sein. :-)!

Danke und gute Nacht.

LG
 
Hallo

Danke Dir vielmals es hat geklappt.

musste aber schreiben:

value='$subjectname' in PHP !

Danke Dir und Gute Nachte :freak:
 
DualityMind schrieb:
value='$subjectname' in PHP !
Nur wenn du in PHP die " statt die ' für/um Strings nutzt
Code:
echo "<input type='text' name='subject' value='$subject' />";
Code:
echo '<input type="text" name="subject" value="'.$subject.'" />';
Beide Varianten gehen, zweitere ist aber für meinen Geschmack die bessere. (PHP behandelt "" und '' unterschiedlich, die zweite Variante ist etwas performanter) Und es sollten alle html-Attribute mit ""/'' versehen werden.
Wobei ich eh nicht im PHP die Seite direkt ausgeben würde. Dafür gibt es sowas wie zB Smarty.
 
Zuletzt bearbeitet:
Genau genommen geht auch "" in "":
Code:
echo "\"Hallo\""; // "Hallo"
​
und ganz korrekt muss man sich gegen "" in $subject auch noch absichern:
Code:
echo '<tag name="'.htmlspecialchars($subject,ENT_QUOTES).'">';
​
Dann gehen auch so Sachen wie """" oder "hallo"><script>alert("Hacked");</script><tag" (Stichwort XSS).
 
Zurück
Oben