Ankündigung

Einklappen
Keine Ankündigung bisher.

seite mehrsprachig ohne session

Einklappen

Neue Werbung 2019

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

  • seite mehrsprachig ohne session

    hallo,

    ich bin php-anfänger und will eine mehrsparchige seite mit php aufbauen.
    ich habe an einer möglichkeit gedacht, wie ich die seite ohne sessions aufbauen kann.

    die seiten sehen wie folgt aus:

    http://www.xyz.com/en/en_seite1.php?lang=en

    http://www.xyz.com/de/de_seite1.php?lang=de

    http://www.xyz.com/fr/fr_seite1.php?lang=fr

    ich habe dann die sprachbuttons en - de - fr

    wie kann ich beim betätigen der sprach-buttons nur die zwei sprach-buchstaben quasi ändern? somit wäre das problem der sprachumschaltung gelößt.
    ich denke, diese problematik muss doch öfter vorkommen und vielen interessieren.

    danke im voraus

  • #2
    Indem Du eben auf den anderen Ordner verlinkst. Falls denn die obigen /en/ etc. echte Ordner und keine mod_rewrite-URLs sind.. Das lang-Attribut brauchst Du dann gar nicht.
    [COLOR="#F5F5FF"]--[/COLOR]
    [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
    „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
    [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
    [COLOR="#F5F5FF"]
    --[/COLOR]

    Kommentar


    • #3
      Wieso nicht einfach etwas wie

      http://www.xyz.com/fr/seite1.php

      oder
      http://www.xyz.com/seite1.php?lang=fr

      Das ist ja 3x redundant..

      Kommentar


      • #4
        Verstehe das Problem nicht ganz!?

        index.php?site=impressum&lang=de

        index.php
        PHP-Code:
        $lang = array("en"=>"englisch","de"=>"deutsch","fr"=>"franz");
        if(isset(
        $_GET['lang']) && array_key_exists($_GET['lang'],$lang)) {
        include 
        $lang[$_GET['lang']]."/".$_GET['site'].".php";

        Natürlich solltest du $_GET['site'] vorher auf Gültigkeit prüfen ( ggf. auch einfach eine Whitelist mit den gültigen Seiten und dann mit in_array checken ).
        Grüße
        "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

        Kommentar


        • #5
          include $lang[$_GET['lang']]."/".$_GET['site'].".php";
          Nicht schon wieder!!
          [COLOR="#F5F5FF"]--[/COLOR]
          [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
          [COLOR="#F5F5FF"]
          --[/COLOR]

          Kommentar


          • #6
            Wieso "nicht schon wieder" ?
            "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

            Kommentar


            • #7
              http://www.php.de/php-einsteiger/653...on-sicher.html

              @taxishop: Bitte im richtigen Forum posten! Die Frage erfüllt nicht das FG-Niveau.

              [MOD: verschoben]
              [COLOR="#F5F5FF"]--[/COLOR]
              [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
              [COLOR="#F5F5FF"]
              --[/COLOR]

              Kommentar


              • #8
                Daher habe ich ja geschrieben er soll die Daten vorher überprüfen !? (wenn ich mich nicht täusche )
                "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

                Kommentar


                • #9
                  "auf Gültigkeit prüfen" kann vieles heissen (z.B. file_exists), wie der andere Thread beschreibt. Das reicht aber nicht aus. Ich halte es für falsch und gefährlich, gerade sowas als c&p-fähigen Code immer wieder zu posten.
                  [COLOR="#F5F5FF"]--[/COLOR]
                  [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                  „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                  [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                  [COLOR="#F5F5FF"]
                  --[/COLOR]

                  Kommentar


                  • #10
                    Deswegen habe ich ja auch den Vorschlag mit der Whitelist gemacht >.<
                    "Dummheit redet viel..Klugheit denkt und schweigt.." [Amgervinus]

                    Kommentar


                    • #11
                      [Offtopic]

                      PHP-Code:
                      $lang = array("en"=>"englisch","de"=>"deutsch","fr"=>"franz");
                      if(isset(
                      $_GET['lang']) && array_key_exists($_GET['lang'],$lang)) {
                      include 
                      $lang[$_GET['lang']]."/".$_GET['site'].".php";

                      In dem Fall reicht ein isset() und auf das array_key_exists() kann verzichtet werden

                      PHP-Code:
                      $lang = array("en"=>"englisch","de"=>"deutsch","fr"=>"franz");
                      if(isset(
                      $_GET['lang'], $lang[$_GET['lang']])) {
                      include 
                      $lang[$_GET['lang']]."/".$_GET['site'].".php";

                      DevBlog|3D Online-Shopping|Xatrium

                      Kommentar


                      • #12
                        interessanter ansatz, elegant finde ich das irgendwie jedoch noch nicht wirklich

                        Kommentar


                        • #13
                          danke für die antworten...

                          ich will aber etwas wie beispielsweise über id abfragen:

                          die variable $lang= de, en, fr; ( eventuell über den id)

                          <a href="
                          PHP-Code:
                          <?php $lang/$lang_*.php?lang=$lang ?>
                          " id="en">en</a>
                          ersetze die variable $lang= de, en, fr; :

                          PHP-Code:
                          $lang/$lang_*.php 
                          mit

                          PHP-Code:
                          $lang/$lang_*.php 
                          es muss doch möglich sein.

                          Kommentar


                          • #14
                            Sorry, aber Postings schreiben solltest Du echt üben. Keine AHnung, wo sich im letzten die Information versteckt hat.
                            id-Attribute kannst Du nicht nativ verarbeiten. Nur umständlich über Javascript.
                            [COLOR="#F5F5FF"]--[/COLOR]
                            [COLOR="Gray"][SIZE="6"][FONT="Georgia"][B]^^ O.O[/B][/FONT] [/SIZE]
                            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                            [URL="http://www.php.de/javascript-ajax-und-mehr/107400-draggable-sorttable-setattribute.html#post788799"][B]Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“[/B][/URL][/COLOR]
                            [COLOR="#F5F5FF"]
                            --[/COLOR]

                            Kommentar

                            Lädt...
                            X