Hallo zusammen,
ich bin total verwirrt. Vielleicht hat jemand eine Idee, also mein Problem.
Habe bei mir xampp eingerichtet. Nun hab ich eine Seite mit Datenbank erstellt und einen Administrationsbereich.
Wenn ich einen Datensatz anlege werden die Textfelder mit htmlspecialchars() umgewandelt und in die DB gespeichert. Unter dem Localhost wird dann aus einem ü ein ü -> Alles korrekt
Wenn ich die Seite auf den Server schiebe und nichts verändere dann bleibt das ü ein ü. Das passiert mit allen Sonderzeichen und Umlauten.
Nun wenn ich einfach
mal eingebe dann wird online im Quelltext nur die Umlaute ausgegeben, aber nicht die HTML Elemente.
Ein anderes Problem, was nichts mit htmlspecialchars zu tun hat, habe ich mit Formularen.
Meine Formularfelder haben alle einen Namen mit eckigen Klammern, z. B. field[meinname], oder field[text]. Unterm localhost kann ich ein Array aufrufen, so:
Das funktioniert einwandfrei.
Nun auf dem Server geht das nicht, da liegen dann die Felder in einem etwas anderen Array
Mein erster gedanke war dass die PHP Version nicht stimmt. Aber auf meinem localhost habe ich die 5.2.9 und auf dem Server die 5.2.1. Die htmlspecialchars() Funktion gibt es doch schon seit PHP4
Jemand eine Idee? Kann man diese Funktion irgendwie deaktivieren oder aktivieren? Das Problem hatte ich noch nie, und ich setze oft die Funktion ein?
Oder kann es an der Codierung des Dokumentes liegen?
Über einen Tip würde ich mich freuen
Gruß
Daniel
ich bin total verwirrt. Vielleicht hat jemand eine Idee, also mein Problem.
Habe bei mir xampp eingerichtet. Nun hab ich eine Seite mit Datenbank erstellt und einen Administrationsbereich.
Wenn ich einen Datensatz anlege werden die Textfelder mit htmlspecialchars() umgewandelt und in die DB gespeichert. Unter dem Localhost wird dann aus einem ü ein ü -> Alles korrekt
Wenn ich die Seite auf den Server schiebe und nichts verändere dann bleibt das ü ein ü. Das passiert mit allen Sonderzeichen und Umlauten.
Nun wenn ich einfach
Code:
echo htmlspecialchars("öäÖäÄ");
Ein anderes Problem, was nichts mit htmlspecialchars zu tun hat, habe ich mit Formularen.
Meine Formularfelder haben alle einen Namen mit eckigen Klammern, z. B. field[meinname], oder field[text]. Unterm localhost kann ich ein Array aufrufen, so:
Code:
$name = $_POST["field"]["meinname"]; $text = $_POST["field"]["text"];
Nun auf dem Server geht das nicht, da liegen dann die Felder in einem etwas anderen Array
Code:
$name = $_POST["field"][0]; $text = $_POST["field"][1];
Jemand eine Idee? Kann man diese Funktion irgendwie deaktivieren oder aktivieren? Das Problem hatte ich noch nie, und ich setze oft die Funktion ein?
Oder kann es an der Codierung des Dokumentes liegen?
Über einen Tip würde ich mich freuen
Gruß
Daniel
Kommentar