Mehrsprachige Homepage

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

  • Mehrsprachige Homepage

    danke
    Zuletzt geändert von phpnueling; 22.10.2006, 00:50.

  • #2
    Re: Mehrsprachige Homepage

    Ich habe es mal so gelösst:
    PHP-Code:
    if (!isset($sprache) or empty($sprache))
    {
      
    $sprache 'de';
    }
    include(
    './sprachen/sprache.' $sprache '.inc.php');
    // Inkludiert die Datei sprache.de.inc.php 
    die variable $sprache kann man zb. auch via GET übergeben, oder sonst wie, hauptsache man kann über den wert auf die entsprechende Datei im Verzeichnis sprache zugreifen.

    In der Sprachdatei liegt alles in einem mehrdimensionalen array vor, dessen phrasen ich dann nur noch in die jeweiligen bereiche meiner Webseite einfügen muss.
    PHP-Code:
      $text = array(
                   
    'login'  => 'Einloggen',
                   
    'Delete' => 'Löschen'
                  
    ); 

    Sers
    Der Boris
    Zuletzt geändert von boris-schneider; 04.05.2006, 22:46.

    Kommentar


    • #3
      @boris-schneider
      ich glaube, dass mit datenbank so was zu lösen wäre sinnvoller als mit dem array, weil
      1)in DB ist es viel leichter die Daten zu pflegen
      2)über DB ist es leichter eine Suchfunktion einzubauen
      3)über ein Array, werden in den Speicher unnötige Daten geladen

      wenn man sich aber auf eine lösung ohne DB entscheidet, dann würde ich auch von der Mehrdemensionalen-Array-geschichte abratten.
      und wenn mit dem Array, dann für jede Seite und für jede Sprache, eine Getrennte datei mit dazugehöriger Array-defenition, die durch sein name
      z.b.s "de_s1.php" dünamisch geladen sein könnte.
      include($_GET['sprachenkuerzel']."_".$_GET['seitenid'].".php");
      Slava
      bituniverse.com

      Kommentar


      • #4
        @Slava
        Es war auch nur eine anregung
        Was bringt es fertige Scripte zu posten die dann nur stumpf implementiert werden, ein paar nette anregungen sollen dafür sorgen, das die Threadsteller eigeninitiative ergreifen und vielleicht das lokale modell in ein Datenbankmodell mit mySQL "verwandeln"


        wenn man sich aber auf eine lösung ohne DB entscheidet, dann würde ich auch von der Mehrdemensionalen-Array-geschichte abratten.
        Wieso ?
        würde mich mal interessieren

        und wenn mit dem Array, dann für jede Seite und für jede Sprache, eine Getrennte datei mit dazugehöriger Array-defenition, die durch sein name
        z.b.s "de_s1.php" dünamisch geladen sein könnte.
        include($_GET['sprachenkuerzel']."_".$_GET['seitenid'].".php");
        Genauso habe ich es auch in meinem beispiel stehen
        Ob nun mit einem wert oder zwei order drei, das "System" ändert sich dadurch nicht

        PS: Wichtig (finde ich) ist auch noch das setzen eines Cookies mit der ausgewählten Sprache vom Besucher, damit dieser bei jedem betreten der Seite seine zuvor ausgewählte Sprache wieder vorfindet und nicht jedesmal neu auswählen muss!


        Sers
        Der Boris
        Zuletzt geändert von boris-schneider; 05.05.2006, 00:12.

        Kommentar


        • #5
          kleine Anmerkung:

          je nach Link eine Session zu starten scheint mir nicht sinnvoll,

          zuerst Session starten, dann Sprachauswahl.

          Kommentar


          • #6
            hi Boris!
            natürlich werden hier verschiedene Möglichkeiten angesprochen und gerade aus disem Grund habe ich meine Meinung ausgesprochen( die nicht unbedingt als die richtige verstanden sein muss)

            <<Genauso habe ich es auch in meinem beispiel stehen
            Ob nun mit einem wert oder zwei order drei, das "System" ändert sich dadurch nicht >>

            Ich meine, dass es doch unterschied macht ob es um ein Array der Inhalte von allen Sprachen hat, oder ein Array der nur eine ausgewählte Sprache und nur für eine ausgewälte Seite hat.
            die Arrays einzusetzen, hat fur mich auch erst dann Vorteil, wenn er in Template verwendet wird, sonnst kannman der Inhalt sogar einfach in Textdateien halten.

            Die Sprache in Session zu halten ist möglich, ist aber nicht zwingend erförderlich(es spricht nichts gegen GET und Post, ausser ständiger anhang an url).

            sorry! für die Schreibfehler( habe erst mit 27 erste deutsche Wort gehört)
            Slava
            bituniverse.com

            Kommentar


            • #7
              Original geschrieben von Slava
              Die Sprache in Session zu halten ist möglich, ist aber nicht zwingend erförderlich(es spricht nichts gegen GET und Post, ausser ständiger anhang an url).
              Also ich halte nichts davon das mit Sessions zu machen, ich setze lieber auf Cookies, die sind eher deine Freunde *urg*
              Und wenn Cookies Browserabhängig nicht gehen, kann man immernoch was an die URI hängen.

              Ist doch auch sonst kein ding Slava, deswegen sind wir ja alle hier um auch verschiedene herangehensweisen kennen zu lernen, jeder hat halt nunmal so seine eigene verogehensweise

              Sers
              Der Boris

              Kommentar


              • #8
                danke
                Zuletzt geändert von phpnueling; 22.10.2006, 00:50.

                Kommentar


                • #9
                  Du kannst doch einen default wert bei der abfrage der Sprache wählen, zb. 1 für Deutsch und 2 für kroatisch, 3 für Englisch etc.

                  Wie du diese Session setzt ist eigentlich völlig Schnurz, du kannst einen Formularbutton einfügen und dann eine abfrage dafür einbauen, du kannst auch lediglich nur die GET variable s (für sprache zb.) abändern und dann eine abfrage dafür einbauen, usw usw.
                  Zuletzt geändert von boris-schneider; 05.05.2006, 07:45.

                  Kommentar


                  • #10
                    was ist denn, wenn ich als User deutsch auswähle, die Session
                    wird gestartet und ich wähle dann englisch
                    - flieg ich dann aus der Session raus? Muß ich mich neu einloggen?

                    Ich mein, es müßte während der selben Session möglich sein
                    die Sprache zu wechseln.

                    Kommentar


                    • #11
                      Und wo liegt nun daran das problem ?

                      Sprachbutton drücken > function überschreibt die aktuelle Sessionvariable mit einem neuen wert > Es findet zb. mit Javascript ein Seitenreload statt > Neue Sprache wird angezeigt!

                      Kommentar


                      • #12
                        nach ändern der lang id einfach header() und zu sich selbst leiten lassen

                        Kommentar


                        • #13
                          Suchfunktion für ein Wörterbuch
                          ...
                          - Deutsche Flagge
                          - Kroatische Flagge
                          Vlado aus Lichtenstein, bist Du das?

                          Kommentar


                          • #14
                            ne nicht wirklich
                            helf mir lieber mit sessions

                            Kommentar


                            • #15
                              Aah. Kam mir nur, weil ich kürzlich mit einem kroatischstämmigen Kollegen ein ganz ähnliches Projekt besprochen hab... Und da die Welt klein ist....

                              Sessions: Setzt der Benutzer die Sprache auf Deutsch, klickt er dazu einen Link nach dem Muster "xyz.php?setlang=de" an; Das Skript wertet "setlang" aus und ändert die entsprechende Sessionvariable; und Anhand des Wertes in der Sessionvariable holt mySQL die entsprechenden Vokabeln aus der Datenbank. Wo liegt das Problem?

                              Kommentar

                              Lädt...
                              X