Was ist das für ne Warnung ?
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
code
double
forum
gold
hinweis
level
meldung
normale zeichen
punkt
richtiger code
single
start
stehen
string
teil
umgehen
unterstrichen
zeichen
zeile
zitat
-
oben
Warning: Unexpected character in input: '\' (ASCII=92) state=1 in /home/webpages/lima-city/fantasystriker/html/Fantasy.php on line 68
bei zeile 68 ist das hier
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level'].\"<br/></font>\n";
danke im vorraus -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level'].'<br/></font>\n';
Du musst einheitlich mit ' und " umgehen.
Außerdem verschoben ins PHP-Forum.
Gruß
Tim -
tibel schrieb:
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level'].'<br/></font>\n';
Du musst einheitlich mit ' und " umgehen.
Außerdem verschoben ins PHP-Forum.
Gruß
Tim
Im letzen Teil wird \n nicht interpretiert, da im single quoted string literal diese Steuerzeichen als ganz normale Zeichen behandelt werden. richtiger:
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level']."<br/></font>\n";
-
<?PHP echo "<b><div style=\"color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;\">Du hast ".$row['Gold']." Gold level :<br/>".$row['Level']."<br/></font>\n"; ?>
-
vnmw schrieb:
....
Im letzen Teil wird \n nicht interpretiert, da im single quoted string literal diese Steuerzeichen als ganz normale Zeichen behandelt werden. richtiger:
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level']."<br/></font>\n";
Wieso nicht einfach den gesamten Text in double quotes schreiben?
echo "<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>".$row['Level']."<br/></font>\n";
edit: Mist, nicht gesehen.
Beitrag zuletzt geändert: 28.7.2010 10:17:11 von robbmaster -
fantasystriker schrieb:
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level'].\"<br/></font>\n";
du hast ein \ direkt nach einem Punkt, das gehört da nicht hin! Ich hab den im Zitat mal Unterstrichen.
Die Meldung sagt eben, das in der Zeile ein Zeichen ist, das da nicht so hingehört ^^
btw, Es ist egal, ob man jetzt ' oder " verwendet…
Auch wenn oben schon die richtigen Lösungen stehen, jedoch leider immer ohne Hinweis, was Falsch ist!
Beitrag zuletzt geändert: 28.7.2010 10:42:02 von thomasba -
thomasba schrieb:
fantasystriker schrieb:
echo '<b><div style="color: #0000CD; position:absolute; margin-left: 100px; margin-top: 300px;font-family: Comic Sans MS; font-size: 20px;">Du hast '.$row['Gold'].' Gold level :<br/>'.$row['Level'].\"<br/></font>\n";
du hast ein \ direkt nach einem Punkt, das gehört da nicht hin! Ich hab den im Zitat mal Unterstrichen.
Die Meldung sagt eben, das in der Zeile ein Zeichen ist, das da nicht so hingehört ^^
btw, Es ist egal, ob man jetzt ' oder " verwendet…
Auch wenn oben schon die richtigen Lösungen stehen, jedoch leider immer ohne Hinweis, was Falsch ist!
Es ist zwar egal, ob Gänsefüsschen oder Semikolon benutzt wird, jedoch gibt es hier Unterschiede:
<?PHP echo 'Micro$oft'; // ergibt: Micro$oft echo "Micro$oft"; // ergibt: Micro + Inhalt der Variable $oft echo "Micro\$oft"; // ergibt: Micro$oft echo 'c:\temp'; // ergibt: c:\temp echo "c:\temp"; // ergibt: c: + Tabulator + emp echo "c:\\temp"; // ergibt: c:\temp echo 'c:\\temp'; // ergibt: c:\temp echo 'Kein Hochkomma: \x27'; // ergibt: Kein Hochkomma: \x27 echo "Ein Hochkomma: \x27"; // ergibt: Ein Hochkomma: ' echo 'Ein Hochkomma: \''; // ergibt: Ein Hochkomma: ' echo "<input name='foo' value='$bar'>"; // gültiges HTML ?>
-
thomasba schrieb:
Auch wenn oben schon die richtigen Lösungen stehen, jedoch leider immer ohne Hinweis, was Falsch ist!
Es sollte nur ein Hinweis sein. Es ist sehr unsauber, im Code immer zwischen single und double quotes zu wechseln. Wenn man alle Funktionen bzw. direkt Variablen nutzen will, nimmst du eben double quotes. Ganz einfach. Auch wenn ich dir Recht geben, dass der eigentliche Fehler noch da war.
Um genau zu sein, escaped er mit dem \ den Start der double quotes, das heißt den Start des strings. PHP wertet den folgenden Text also als Anweisung. :) -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage