Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] strlen auf server 1 zeichen mehr als lokal.

Einklappen

Neue Werbung 2019

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

  • [Erledigt] strlen auf server 1 zeichen mehr als lokal.

    Hi,

    ich prüfe mit mb_Strlen die lnge eines strings. kommt z.b. ein scharfes ß im string vor stimmt die länge des strings nur lokal auf meinem windows rechner
    auf unserem linux server zeigt er mir wegen dem ß ein zeichen zuviel an.

    das ganze stimmt erst dann wenn ich mb_Strlen eine codierung mitangebe.

    warum? als default-charset ist in der httpd.conf utf8 eingestellt.


    EDIT: der titel passt nicht mehr ganz da ich dem Problem schon auf die Spur gekommen bin^^

  • #2
    Unter Windows wird das Zeilenende durch Carriage Return (CR, ASCII 13,#0D) und Line Feed (LF, ASCII 10, #0A) gekennzeichnet.
    Unter Unix wird das Zeilenende durch Line Feed gekennzeichnet.
    Auf dem Mac nur mit Carriage Return.
    Es kommt darauf auf, wie die Daten zum Server übertragen worden sind (ftp: ASCII oder Binär).

    Kommentar


    • #3
      binary. fireftp ist bei mir fest auf binary eingestellt.. und hier sollte ich wohl ascii benutzen?
      sehe ich das richtig.. wenn ichs auf automatisch setzte werden .php datein per ascii hochgeladen wogegen bilder etc. per binary hochgeladen werde? oder ist das im prinzip egal?

      EDIT: selbst wenn ich es per ascii hochlade.. gleiches ergebnis

      Kommentar


      • #4
        Also ich kann mir nur vorstellen das es an deiner Codierung liegt. Denn dann gibt strlen() zwei unterschieliche Werte aus.

        Probier Mal mb_strlen().

        LG Sonic

        Kommentar


        • #5
          sonic.. siehe erster thread.. mb_Strlen nutze ichja bereits.. und wie gesagt beide apache laufen mit default-charset utf8..
          warum ich dann noch für mb_strlen explizit utf8 angeben muss verstehe ich nicht..

          Kommentar


          • #6
            Sorry, hab ich wohl überlesen.
            Du kannst dir ja Mal folgenden Link ansehen(Die erste Antwort dürfe interessant für dich sein):
            http://forum.de.selfhtml.org/archiv/2009/7/t188913/

            -Sonic-

            Kommentar


            • #7
              Hast du mal versucht, dir mit mb_internal_encoding() das interne encoding anzusehen...? Ob das wirklich UTF-8 ist?
              "Nein, nein das Beste an Zombieland ist: Keine Facebook-Status-Updates mehr.
              'Rob Curtis freut sich schon auf Freitag', wen interessierts?"

              Kommentar


              • #8
                heiko dein tip war goldrichtig... auf dem linux server nutzt er ISO-8859-1 ...
                in der phpinfo steht als default charset utf8 drin.. datenbanken sind auch alle auf utf8 eingestellt (wobei das hier ja nichts mit der db zu tun hat)

                EDIT: alles klar.. hab in der php.ini die internekodierung auskommentiert.. nun passt das
                danke dem hinweis

                Kommentar

                Lädt...
                X