Ankündigung

Einklappen
Keine Ankündigung bisher.

Zeichencodierung und Umlaute

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Zeichencodierung und Umlaute

    Hallo zusammen

    Ich kenne mich noch nicht gut mit php aus und habe folgendes Problem: Ich möchte das phpbb Board auf meinem Webspace installieren, doch wie das Beispiel unter http://www.starsax.de/phpbb/install/install.php zeigt werden bereits während der Einrichtung alle Umlaute als "�" dargestellt. (Bei einem fertig installierten Board genauso)
    Auf einem anderen Server funktioniert es mit den gleichen Dateien korrekt.
    Das Problem ist Browserabhängig: beim IE taucht es nicht auf, aber bei Firefox und Opera schon (fehlerhafte Browserkonfiguration kann ausgeschlossen werden, habe es auf mehreren PCs überpfüft)

    Wenn man auf die Seite geht "erkennt" Firefox/Opera diese fälschlicherweise als UTF-8, obwohl im Header des Quelltextes ISO-8859-1 steht. Nach manuellem Umschalten werden Umlaute korrekt dargestellt, aber bei erneutem Aufruf kommen die "?" wieder.

    Weiß jemand weiter? Mein Webhoster meinte nur
    "wie Sie vielleicht schon erkannt haben, ist das ein Problem von Firefox/Opera, da im Internetexplorer die Einträge in Ordnung sind." Naja, toll...


  • #2
    Da wird das phpBB Forum dir wohl eher weiterhelfen können. Wahrscheinlich stehts sogar in der FAQ?

    Kommentar


    • #3
      also ich hab natürlich schon im pbpBB Forum / FAQ etc. gesucht, aber bin nicht fündig geworden. Außerdem glaube ich nicht daß es an phpBB selbst liegt sondern irgendwie an meinem Server oder der php-Konfiguration, deswegen hab ich den Thread hier eröffnet.

      Kommentar


      • #4
        Re: Zeichencodierung und Umlaute

        Zitat von tequilasunrise
        Wenn man auf die Seite geht "erkennt" Firefox/Opera diese fälschlicherweise als UTF-8, obwohl im Header des Quelltextes ISO-8859-1 steht.
        Was im Quelltext steht, ist völlig irrelevant und kommt ohnehin zu spät. Der HTTP-Header zählt, und der wird sicher »Content-Type: text/html; charset=UTF-8« senden (habe jetzt nicht nachgesehen). Der IE hat einen Ratemodus, der ohne jede Aussagekraft ist.

        Gruß
        Thomas

        Kommentar


        • #5
          Naja, also ich meinte schon den HTTP-Header der beim aufrufen der Seite "ankommt". Und da steht eben ISO blabla... drin:
          <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
          <html>
          <head>
          <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
          <meta http-equiv="Content-Style-Type" content="text/css">
          <title>Willkommen bei der phpBB2-Installation</title>
          und trotzdem schalten die Browser auf UTF-8. Das ist ja gerade das was mich verwirrt...

          Kommentar


          • #6
            Das ist kein HTTP-Header, sondern der HTML-Header. Der HTTP-Header kommt früher und wird im Browser normalerweise nicht angezeigt.
            Siehe: http://web-sniffer.net/?url=http://w...p=yes&type=GET

            Code:
            Content-Type:	text/html; charset=utf8
            Gruß
            Thomas

            Kommentar


            • #7
              ok, da scheint wohl die ursache zu liegen. jetzt wüsste ich nur noch gern wie ich beeinflussen kann was in diesem http-header steht...

              hab grad mit einem (einfachern) test-skript die gleichen resultate bekommen:
              http://www.starsax.de/perform.php

              (Selbes skript auf anderem Webspace:http://tequila79.te.funpic.de/perform.php)

              Kommentar


              • #8
                Zitat von tequilasunrise
                jetzt wüsste ich nur noch gern wie ich beeinflussen kann was in diesem http-header steht...
                mit header(). Bei dir also:
                PHP-Code:
                <?php
                header
                ('Content-Type: text/html; charset=iso-8859-1');
                ?>

                Kommentar


                • #9
                  Wenn du mal irgendeine Suchmaschine bemüht hättest, wärest du sicher auf dieses gestoßen: http://de2.php.net/header()

                  Nimm es mir nicht übel, aber dies hier ist ein Forum, kein Denk- oder Arbeitsersatz. Wir können dir den Weg zeigen – laufen mußt du selber.

                  Kommentar


                  • #10
                    oha. also in meinem testskript (http://www.starsax.de/perform.php) funktioniert das schonmal

                    also nehm ich mal an wenn ich die header-angabe in die entsprechenden Dateien des phpBB-Boardes einbaue würde es gehen....

                    Aber: die Ursache des Fehlers muss doch irgendwo anders liegen - warum läuft das Board und mein Testscript auf anderen Servern korrekt? Irgendwie hab ich nach wie vor en den Verdacht daß mein Server irgendwelche Angaben ignoriert...

                    Folgender Test:
                    eine einfache html-Datei "test.html" hat im html-header die zeile
                    <meta content="text/html; charset=ISO-8859-1" http-equiv="content-type">
                    Mit dem Web-Sniffler (danke tscho ) erhält man trotzdem den http-response "Content-Type: text/html; charset=utf8"

                    http://web-sniffer.net/?url=http://w...p=yes&type=GET

                    Ist da nicht irgendwas am http-Server fehleingestellt?

                    Kommentar


                    • #11
                      Vielleicht hast du in der php.ini UTF-8 als Default-Charset stehen. Auf jeden Fall kannst du das überschreiben, wenn du selber die header()-Funktion einsetzt. Irgendwelche Angaben im HTML-Code sind sinnfrei. Sie kommen zu spät und können niemals den Wert des HTTP-Headers überschreiben. Sie sind nur nötig, wenn sich jemand das Dokument lokal abspeichert und dazu einen Browser verwendet, der unfähig ist, die Angabe im Dokument zu vermerken (Mozilla krankt z.B. seit Jahren an diesem Bug; IE und Opera: kein Problem).

                      Generell möchte ich dir nahelegen, alles bei UTF-8 zu belassen und lieber die Daten umzustellen. Du hast www.authoring.misc/msg/0e782543d0e11096?dmode=source]nur Vorteile[/url] davon.

                      Gruß
                      Thomas

                      Kommentar


                      • #12
                        @ tscho
                        also du darfst mir glauben daß ich bereits einige Stunden gegoogelt, gesucht und gelesen habe...

                        ich bin halt davon ausgegangen (und tue es eigentlich immer noch) daß die phpBB-Skripte nicht Schuld an dem Fehler sind, da sie ja auf vielen anderen Servern (so auch hier) funktionieren. Ich hab ja auch zuerst an meinen Webhoster geschrieben, aber der zeigte sich ja auch nicht besonders hilfsbereit ("liegt wohl am Browser" etc.)

                        Ich vermute als Ursache halt irgend eine Fehleinstellung auf der Serverseite, und wenn mir jemand aufgrund ähnlicher Erfahrungen einen kleinen Hinweis geben könnte, hätte ich was handfestes, was ich meinem Hoster schreiben könnte.....

                        Kommentar


                        • #13
                          Zitat von tequilasunrise
                          @ tscho
                          also du darfst mir glauben daß ich bereits einige Stunden gegoogelt, gesucht und gelesen habe...
                          Das glaube selbst ich Dir nicht. Du willst uns doch nicht wirklich weis machen, nach mehreren Stunden Suche nicht den geringsten Hinweis zu Header gefunden zu haben. Wenn Du also faul bist, steh dazu!

                          Zitat von tequilasunrise
                          ich bin halt davon ausgegangen (und tue es eigentlich immer noch) daß die phpBB-Skripte nicht Schuld an dem Fehler sind, da sie ja auf vielen anderen Servern (so auch hier) funktionieren.
                          Wer hat Dir denn in dem Punkt widersprochen?

                          Zitat von tequilasunrise
                          Ich vermute als Ursache halt irgend eine Fehleinstellung auf der Serverseite.....
                          Und diese [Pseudo-]Fehleinstellung wurde Dir auch schon genannt:
                          Zitat von toscho
                          Vielleicht hast du in der php.ini UTF-8 als Default-Charset stehen.
                          Ergo: Frag mal bei Deinem Webhoster nach besagter Einstellung, wenn Du keinen Zugriff auf die ini hast. Mal vorrausgesetzt dieser verfügt über die nötigen Kompetenzen diese Änderung durchzuführen... :wink:

                          Ansonsten bleibt Dir ja noch der Umweg über header().

                          Kommentar


                          • #14
                            Das glaube selbst ich Dir nicht. Du willst uns doch nicht wirklich weis machen, nach mehreren Stunden Suche nicht den geringsten Hinweis zu Header gefunden zu haben. Wenn Du also faul bist, steh dazu
                            Warum so agressiv.... Sorry, da ich davon ausgegangen daß ich an den php-dateien nichts verändern muss, da sie ja überall sonst laufen, habe ich den fehler woanders gesucht. Ich geb ja zu dass ich noch ein ziemlicher Anfänger bin, und bitte daher um Verzeihung wenn ich eine "Selbstverständlichkeit" übersehen habe....

                            Und der Hinweis mit der php.ini wurde gepostet während ich schon am editieren der nächsten Antwort war....

                            Umstellen des kompletten Forums auf UTF-8 wird in den phpBB-Foren meist abgeraten....

                            Also ich werde dem Hoster eine Mail schreiben, ob er die php-ini den utf8-default-eintrag löschen kann. Ich hoffe mal er weiß dann bescheid.

                            Kommentar


                            • #15
                              Zitat von tequilasunrise
                              Warum so agressiv....
                              Weil Deine Behauptung mehrere Stunden gesucht zu haben, mir doch ziemlich erstunken und erlogen vorkam. Wenn sie doch wahr sein sollte, bitte ich natürlich um Entschuldigung.

                              Kommentar

                              Lädt...
                              X