Sonderzeichen mit $_POST übergeben

D

danwip

Guest
Hallo,

habe folgendes Problem. Ich habe eine Seite, mit charset=ISO-8859-1 im Header.
Desweiteren habe ich ein Formular, dass einfach Daten aus einem Textfeld weitergibt.
Wenn man Eingaben ohne Sonderzeichen, also Umlaute und ß macht, funktioniert alles,
sobald aber ein Sonderzeichen vorkommt, ist $_POST leer. Kann sich das jemand erklären?
Bin bei host2day und bislang hat alles prima geklappt. Haben die wieder was umgestellt oder gibt es ein anderes Problem?

Danke
 
Neulich gab es hier mal einen Fall, bei dem der Html-Code falsch ausgezeichnet war.

Rufe die Seite auf, speichere den Quellcode in eine lokale Datei ab.

Ändere <form action='das, was hier drinsteht'> auf http://beispiel.server-daten.de/

Rufe die Seite lokal im Browser auf, gib ein paar Sonderzeichen ein und schicke das ab. Dann gucke ich mal nach, ob etwas angekommen ist.

Auf server-daten läuft zu Debug-Zwecken das ASPNET-Trace. Das zeigt, was der Browser geschickt hat.

Wenn das korrekt ankommt, dann ist es ein Problem der verarbeitenden Scripts.
 
Von so einem Problem hör ich das erste mal. Probier mal das Testscript:

CODE <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>

<body>
<? print_r($_POST); ?>
<form method="post">
<input name="text" type="text" />
<input name="submit" type="submit" value="go" />
</form>
</body>
</html>


Es müsste eigentlich gehen, ansonsten liegt es wirklich an einer Fehlkonfiguration von PHP, evtl. stimmt da das Argumenten-Trennzeichen nicht (arg_separator.output und/oder arg_separator.input) oder magic_quotes ist irgendwie ungünstig definiert.
 
Wenn da wirklich etwas nicht stimmen sollte, einfach bei mir per PN melden
wink.gif

Sieht auf allen Servern gleich aus: http://schwei.ch/intranet/php.php

Es gab vor 1,5 Wochen eine Umstellung auf PHP 5.2.6, bisher ist das aber die einzige Rückmeldung, deshalb schliesse ich eine Fehlkonfiguration ziemlich sicher aus, würde ein Fehler vorliegen, hätten wir innert Sekunden ca. 100 Meldungen.

Das einzige was früher anscheinend auf einem einzigen System ging (glaub auf Server 5 oder 10), war die Ausführung von Perl Dateien ausserhalb des cgi-bin Verzeichnis. Das wurde beim letzten Update gefixt. Und die Java Engine (Tomcat) haben wir gestern bzw. heute Mittag nochmals (und damit engültig) eingestellt (war nie offiziell angeboten). Sonst hat sich in den letzten 2 Monaten nichts getan, was nicht üblich wäre.


Gruss Marc
 
Ne, scheint doch ein anderes Problem zu sein. Da es sich um AJAX handelt, wird wohl wahrscheinlich ein Skript mit meinem kollidieren. Hab mal die Hauptfunktionen in zwei Dateien implementiert und da funktioniert alles.
Danke für die Antworten und sorry für die Umstände
smile.gif
 
So, Problem ist behoben.
Lag daran, dass die Securityeinstellungen, die die POST-Variablen überwachen auf UTF-8 und nicht auf Latin-1 gestellt waren.
Daraufhin wurden natürlich alle Eingaben mit Sonderzeichen vom Filter als Spam klassifiziert.
Danke an alle und an host2day, bin zufrieden mit denen
smile.gif
 
Zurück
Oben