[Variablen] Russische Zeichen (Русски&am

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

  • [Variablen] Russische Zeichen (Русски&am

    Hallo zusammen.

    Ich hoffe, dass dies von euch nicht als "Noob"-Frage angeschaut wird, und ihr mir trotzdem antwortet:

    Ich habe eine Website mit verschiedenen Sprachen laufen. Funktioniert bis hierhin eigentlich auch ganz gut, ich implementiere die gewünschte Sprache einfach per z.B für Deutsch:

    include $settings["DIR_LANG"]."de.php";

    und in de.php sieht's so aus:
    PHP-Code:
    <?php
    //Deutsch
    $lang = array(
        
    "LNG_NAME" => "Deutsch",
            
    "LNG_NAMESHORT" => "de",
        
    "LNG_CHANGELANG" => "Sprache wechseln",
        
    "LNG_NOLANG" => "Keine andere Sprache ausgewählt",
        
    "LNG_CHANGEDLANG" => "Sprache erfolgreich geändert",
        
    // Und so weiter
    );
    Schön und gut, das funktioniert alles.
    Wenn ich jetzt jedoch eine Datei so erstelle mit russichen Zeichen, dann listet er einfach die komplette ru.php (so heisst die Sprach-Datei) und danach kommen tausende japanische und chinesische Zeichen.

    Woran liegt das?
    Unterstützt PHP auf irgendeine Weise keine russischen Zeichen? (wär unlogisch) Oder muss ich was spezielles aktivieren?

    Das bringt mich gleich noch zu meiner Zusatzfrage, die hier anschliesst:
    Ich erstelle Bilder dynamisch, d.h. Buttons, mit Aufschriften, die auch in eben dieser Sprachdatei gespeichert sind.
    Hmm... davon scheint er auch nix wissen zu wollen. Was mach ich wohl falsch?

    Vielen Dank zum Voraus für eure Antworten und Gruss
    ///BAS/// BasicArtsStudios

  • #2
    1. was du im betreff angeführt hast, sind html-entities, die werden richtig vom browser interpretiert, wenn du die richtige kodierung wählst. bei russisch wäre es "kyrillisch - windows" bzw. "koi8-r".

    damit der browser die kodierung automatisch erkennt, solltest du einen entsprechenden header abschicken.
    PHP-Code:
    //z.b.
    header('Content-type: text/html; charset=windows-1251');
    //bzw. seltener (zurecht)
    header('Content-type: text/html; charset=koi8-r'); 
    die richtige angabe wäre auch als meta-tag nicht verkehrt (wenn auch zweitrangig).

    allerdings würde ich dir empfehlen, die texte in utf-8 vorzubereiten. diese kodierung erlaubt dir u.u. deutsche sonderzeichen neben kyrillischer schrift darzustellen.

    mehr unter: http://www.moosburg.org/design/kyrill.html8

    2. wenn du mit imagettftext() arbeitest - einfach eine schriftart finden, die kyrillischen zeichensatz enthält. wenn du imagestring() nutzst, solltest du vorher imageloadfont() nehmen, um diese schriftart verwenden zu können.

    Kommentar


    • #3
      Hallo

      Naja, ich hab die Zeichen mit der russischen Tastatur eingegeben. Das Board scheint sie automatisch in HTML-Entities umzuwandeln.

      Das ist hier aber nicht das Problem. Ich habe ECHTE russiche Zeichen in der Datei, und nicht als Entities

      Es sollte "Русский" heissen. Hoffe, es kommt jetz rüber

      Kommentar


      • #4
        dann, s. punk 1.
        OffTopic:
        парлэ-ву франсэ?

        Kommentar


        • #5
          Ich glaube, das Problem ist nach wie vor nicht der Browser, sondern das Laden der Datei...
          Werd mich nochma dahinter klemmen, danke erst mal

          OffTopic:
          Und, ja ich spreche französisch. Aber mit mir musste nid russisch reden, ich weiss nur, welche Zeichen ungefähr wie aussprechen. Aber was es heisst... naja... knapp


          Wenn du ma sehn willst, hier is link: (Das Russische ist in Arbeit)
          http://sswo.ch.vu

          Kommentar


          • #6
            das gilt auch nicht nur für browser, sondern für alle programme. dein editor sollte den kodierungswechsel unterstützen.

            Kommentar


            • #7
              Weiss scho. Nehm ja auch ganz einfach Notepad, und speicher's dann als Unicode.
              Hier schaut:

              http://www.basclan.host-dot.com/SSWO...ion=changelang
              ganz zuunterst steht doch
              "ru - / CAA:89"
              da sollte aber
              "ru - / Русский" stehen...
              Nun, und was passiert, wenn ihr's anklickt, seht ihr ja selbst. Leider überhaupt nicht das, was es sollte.
              Wenn was dummes passiert ist, und ihr nicht mehr zurück könnt, dann hier klicken:
              http://www.basclan.host-dot.com/SSWO...php?setlang=de
              Dann ist die Sprache wieder auf Deutsch.

              Mir scheint, er hat am Unicode allgemein nicht sehr Freude....

              Gruss
              Zuletzt geändert von BasicArtsStudio; 01.08.2005, 01:34.

              Kommentar


              • #8
                notepad?? wie das?

                warum der quellcode zu sehen ist, wirst du besser wissen.
                dass du aber mit den kodierungen definitiv einen unfung anstellst, ist eine tatsache. nimm notepad++, das programm kann wunderbar mit utf-8 umgehen.

                Kommentar


                • #9
                  Naja teilweise verwende ich auch DzSoft PHP Editor 3.0, vielleicht kennst du's ja.

                  Aber für die Sprachdateien hab ich einfach Notepad genommen, und .php abgespeichert. Klappte wunderbar, habe nicht an die russischen Zeichen gedacht^^

                  Aber warum der Quelltext angezeigt wird, kann ich dir auch nicht sagen... Aber ich denke, ich saug mir ma notepad++. gruss

                  Habe nun in UTF-8 gespeichert: Ergebnis kann man nochmal anschauen, dasselbe problem. http://basclan.host-dot.com/SSWO/index.php?setlang=ru
                  Zuletzt geändert von BasicArtsStudio; 01.08.2005, 17:37.

                  Kommentar

                  Lädt...
                  X