PHP Upload Script Probleme.

Aber was hat das dann mit den zwei unbekannten Zeichen mitten im Text zu tun? Verarbeitet wird die Datei ja :freak: Ich muss mal blöd fragen, ich will ja auch was lernen :D
 
Ihr seid echt Experten :) Es scheint echt ein UTF8-BOM zu sein, wie auf wikipedia zu lesen. EF BB BF. Habe dazu eine kleine Funktion geschrieben
PHP:
    function remove_bom($string) {
        if (strpos($string,"\xEF\xBB\xBF") !== false ) {
        $string = str_replace("\xEF\xBB\xBF",'',$string);
        echo "UTF-8 BOM detected and removed.<br>".PHP_EOL;
        }
        return $string;
    }
$string = remove_bom($string);
Seitdem wird keine Exception mehr abgefangen beim Upload der Datei und das SQL geht durch.

Jedoch ist ein neues Problem ist aufgetaucht mit meiner is_pgn() Funktion. Sie sortiert manchmal Dateien aus, die eigentlich valide sein sollten. Es steht zumindest alles drin, was abgefragt wird. Verstehe nicht weshalb sie aussortiert wird.

Hier ein Beispiel http://devphp.de/pgn/demopgn/Oberliga.pgn

Aber was hat das dann mit den zwei unbekannten Zeichen mitten im Text zu tun?
Welche 2 Zeichen mittem im Text? Die 2 Fragezeichen im SQL Statement? Keine Ahnung, es müssten ja eigentlich 3 sein, aber der BOM wird ja jetzt herausgefiltert und alles ist gut. Bis auf die is_pgn()
 
Naja, ich war davon ausgegangen dass EFBBBF mitten im Text eben nicht BOM ist, sondern einfach nur heißt, dass bei der Konvertierung nach UTF8 ein Zeichen nicht konvertiert werden konnte.

Man könnte jetzt *klar* die Zeichenfolge einfach wegwerfen, 0 Problemo, aber letztendlich zeigt das ja, dass ein Zeichen nicht konvertiert werden konnte, sprich da fällt irgendwas unter den Tisch.

@pgn Funktion: da solltest du IMHO einen anderen Thread für aufmachen, ist ein anderes Thema(und ich kann mir nicht vorstellen dass hier noch viele reingucken nach dem Encodingthema, das ist so ein bisschen wie Weihwasser wenn man gern Programmierer abwehren möchte :freak:)
 
Zurück
Oben