Seite 1 von 1
HTML unter PHP verarbeiten
Verfasst: So Mär 10, 2002 1:17 pm
von Wanderer
Moin !
Ich fange gerade erst mit php an - und finde auf ein Problem leider noch keine Antwort:
ich übergebe per Formular (per get) Daten an mein Script, das klappt soweit. Ist jedoch ein "/" drin (z.B. bei Links im Text) ersetzt PHP das mit "\" .
Ich habe es schon mal mit addslashes und htmlentities versucht - aber das führt auch nicht zum genünschten Ergebnis.
Mit welchem Kommando kann php den Inhalt meiner Variablen in diesem Fall denn escapen ?
HTML unter PHP verarbeiten
Verfasst: So Mär 10, 2002 2:50 pm
von XTale
?
entweder bin ich zu blöd oder deine erklärung zu kompliziert

HTML unter PHP verarbeiten
Verfasst: So Mär 10, 2002 3:52 pm
von Katana
Wofür willste denn 'n """ übergeben ???
HTML unter PHP verarbeiten
Verfasst: So Mär 10, 2002 4:43 pm
von Wanderer
Eigentlich gaaaanz einfach, hier also ein konkretes Beispiel:
In meiner Form, die ich an das Script schicke habe ich ein Feld:
<input checked name="rlink1">
In diese soll man Links eintragen können, etwa
http://www.retrozone.de/test/
Im Script steht dann jedoch in der Variablen:
http:\\www.retrozone.de\test\ - obwohl ich noch nichts am Inhalt geändert habe. Also direkt am Anfang:
echo($rlink1);
HTML unter PHP verarbeiten
Verfasst: Mo Mär 11, 2002 12:01 am
von Katana
Wieso macht der aus "/" """ ???
HTML unter PHP verarbeiten
Verfasst: Mo Mär 11, 2002 6:51 pm
von Wanderer
Wenn ichs wüsste würde ich nicht fragen *g*
HTML unter PHP verarbeiten
Verfasst: Mo Mär 11, 2002 7:39 pm
von Stelios
Zitat deutsches PHP Manual:
<blockquote><font size="1" face="Verdana, Arial">Zitat:</font><hr>
Doppelte Anführungszeichen (Double quoted)
Wenn ein String in doppelten Anführungszeichen (") eingeschlossen ist, versteht PHP mehr Escape-Folgen für spezielle Zeichen:
Tabelle 6-1. Nicht ausgewertete / übergangene Zeichen:
Zeichenfolge Bedeutung
nZeilenvorschub (LF oder 0x0A als ASCII-Code)
Wagenrücklauf (CR oder 0x0D als ASCII-Code)
horizontaler Tabulator (HT oder 0x09 als ASCII-Code
\ Backslash / Rückstrich
$ Dollar-Symbol
"" doppelte Anführungszeichen
[0-7]{1,3} die Zeichenfolge, die dem regulären Ausdruck entspricht ist ein Zeichen in Oktal-Schreibweise
x[0-9A-Fa-f]{1,2} die Zeichenfolge, die dem regulären Ausdruck entspricht ist ein Zeichen in Hexadezimal-Schreibweise
<hr></blockquote>
das "retrozone.de\test" im string ist also eigentlich "retrozone.de/test"
probiers mal mit ' statt " im form, dann sollte es klappen.
[ 12. März 2002: Beitrag editiert von: Stelios ]</p>
HTML unter PHP verarbeiten
Verfasst: Di Mär 12, 2002 12:35 am
von mrrxRZ
'rlink1' tuts auch
HTML unter PHP verarbeiten
Verfasst: Di Mär 12, 2002 9:40 am
von Madman
Das kommt daher, das in der PHP Installation, die du benutzt die Magic Quotas eingestellt sind.
(Wenn ich mich nicht ganz stark irre

)
Du kannst das umwandeln indem du
$rlink1 = str_replace("\","/",$rlink1);
machst.
HTML unter PHP verarbeiten
Verfasst: Di Mär 12, 2002 8:35 pm
von Wanderer
Zwar scheinen auch die Magic Quotes es auch nicht zu sein (die Betreffen nur den Backslash) - aber der Tip war gut:
$rlink1 = str_replace("\","/",$rlink1);
$rlink1 = str_replace("//","/",$rlink1);
Dann funktionierts. Warum auch immer. Sehrrrr seltsam ;>
Thx an alle !