Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Utf-8

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Utf-8

    Hallo da draussen,

    ich hab mal wieder ein Problem mit UTF-8, schonwieder...
    Auf meinem Server, also ein Hosting-Abo, läuft alles i.O.

    siehe
    hier klicken

    Auf dem Live Server klappt es aber nicht.
    Windows Server / Apache / PHP.
    nochmals klicken

    Es sind genau die gleichen Files auf beiden Servern online.

    gibts irgendwo in der php.ini oder im apache noch eine Einstellung welche beachtet werden muss?


  • #2
    Ich kanns dir nicht genau sagen woran es liegt allerdings wird die Seite nicht automatisch als UTF-8 angezeigt trotz Meta-Tag .. sobald ich händisch die Zeichencodierung UTF-8 wähle wird es richtig angezeigt.
    Prüf mal ob die Dateien etc. in UTF-8 vorliegen oder du den Output erst UTF-8 encodieren musst.
    Gewisse Dinge behält man besser für sich, z.B. das man gewisse Dinge für sich behält.

    Kommentar


    • #3
      Code:
      wget -dv http://kunden.designinmotion.ch/persag/stellensuche.php
      Setting --verbose (verbose) to 1
      DEBUG output created by Wget 1.11.4 on linux-gnu.

      --2008-12-09 15:57:18-- Persag AG
      Auflösen des Hostnamen »kunden.designinmotion.ch«.... 217.26.54.19
      Caching kunden.designinmotion.ch => 217.26.54.19
      Verbindungsaufbau zu kunden.designinmotion.ch|217.26.54.19|:80... verbunden.
      Created socket 3.
      Releasing 0x080f5bb8 (new refcount 1).

      ---request begin---
      GET /persag/stellensuche.php HTTP/1.0
      User-Agent: Wget/1.11.4
      Accept: */*
      Host: kunden.designinmotion.ch
      Connection: Keep-Alive

      ---request end---
      HTTP Anforderung gesendet, warte auf Antwort...
      ---response begin---
      HTTP/1.1 200 OK
      Date: Tue, 09 Dec 2008 14:57:18 GMT
      Server: Apache/2.2.9 (FreeBSD) DAV/2 mod_hcgi/0.5.6 mod_ssl/2.2.9 OpenSSL/0.9.8g
      X-Powered-By: PHP/5.2.6
      Connection: close
      Content-Type: text/html

      ---response end---
      200 OK
      Länge: nicht spezifiziert [text/html]
      In »stellensuche.php« speichern.

      [ <=> ] 15.541 7,09K/s in 2,1s

      Closed fd 3
      2008-12-09 15:57:21 (7,09 KB/s) - »stellensuche.php« gespeichert [15541]
      Code:
      wget -dv http://www.persag.ch/soprop/stellensuche.php
      Setting --verbose (verbose) to 1
      DEBUG output created by Wget 1.11.4 on linux-gnu.

      --2008-12-09 15:57:46-- Persag AG
      Auflösen des Hostnamen »www.persag.ch«.... 62.2.231.92
      Caching Persag AG => 62.2.231.92
      Verbindungsaufbau zu www.persag.ch|62.2.231.92|:80... verbunden.
      Created socket 3.
      Releasing 0x08fb4b98 (new refcount 1).

      ---request begin---
      GET /soprop/stellensuche.php HTTP/1.0
      User-Agent: Wget/1.11.4
      Accept: */*
      Host: Persag AG
      Connection: Keep-Alive

      ---request end---
      HTTP Anforderung gesendet, warte auf Antwort...
      ---response begin---
      HTTP/1.1 200 OK
      Date: Tue, 09 Dec 2008 14:57:41 GMT
      Server: Apache/2.0.48 (Win32) PHP/5.2.6 JRun/4.0
      X-Powered-By: PHP/5.2.6
      Connection: close
      Content-Type: text/html; charset=ISO-8859-1

      ---response end---
      200 OK
      Länge: nicht spezifiziert [text/html]
      In »stellensuche.php« speichern.

      [ <=> ] 15.793 12,8K/s in 1,2s

      Closed fd 3
      2008-12-09 15:57:48 (12,8 KB/s) - »stellensuche.php« gespeichert [15793]
      Der eine Server sendet einen iso-header, der andere garkeinen, im endeffekt sollte es bei beiden utf-8 sein.

      Einfachste und wohl beste Lösung -> php den passenden header selbst senden lassen, dann ist man nicht von irgendwelchen Server-seitigen Einstellungen abhängig.

      PHP-Code:
      header('Content-Type: text/html; charset=utf-8'); 
      robo47.net - Blog, Codeschnipsel und mehr
      | Caching-Klassen und Opcode Caches in php | Robo47 Components - PHP Library extending Zend Framework

      Kommentar


      • #4
        danke für den Tipp, hast recht.

        ich glaube das es irgend ein Server-Setting sein muss. Der Hoster musste für mein Script extra php installieren.

        ich habe hier einen interessanten Artikel über utf-8 gefunden.


        utf-8

        Dort steht.

        3. Webserver (Apache) für UTF-8 vorbereiten

        Um den Webserver explizit anzuweisen, dass wir unsere Seiten in UTF ausliefern wollen, fügen wir folgende Zeilen hinzu (.htaccess wäre eine Möglichkeit):
        AddType text/css;charset=utf-8 .css
        AddType text/html;charset=utf-8 .html

        oder
        AddCharset utf-8 .css .html .xhtml
        Ich glaube jedoch das dies den Meta-Tag ersetzt bzw. überschreibt?

        Kommentar


        • #5
          Kannst du nicht einfach HTML-Entities senden? Bei dem Wort Temporär hast du es gemacht.

          Kommentar


          • #6
            Es handelt sich sicher um die Einstellung von php "default_charset"
            die kann für php allgemein, einen vhost oder via .htaccess gesetzt werden.

            Allerdings ist in meinen Augen die sinnvollere Lösung in der eigenen Applikation auch den passenden Header zu senden.
            robo47.net - Blog, Codeschnipsel und mehr
            | Caching-Klassen und Opcode Caches in php | Robo47 Components - PHP Library extending Zend Framework

            Kommentar


            • #7
              die daten kommen aus einem XML-File und sind dort als UTF-8 hinterlegt. Also mühsames umwandeln...

              Kommentar


              • #8
                danke euch, es funktioniert! habe den Header() gesetzt!
                Das ist wieder mal was für meine UTF-8 todo Liste

                Kommentar

                Lädt...
                X