Sprachauswahl

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

  • Sprachauswahl

    Hallo

    Ich habe folgende Documente in einer Site.
    header.tpl,
    subnavi.tpl,
    navi.tpl,
    site_init.tpl
    statisch.php
    footer.tpl

    Mit index.php rufe ich die Site auf. Dazu habe ich noch den Inhalt
    test20.php
    test21.php
    test22.php

    Da sieht alles gut aus.
    Jetzt habe ich im am Anfang folgendes Script für die Sprachauswahl:
    (in site_init.tpl)
    ----------------------------------------------------------------------------
    <?php
    function lingua($language){
    session_start();
    session_register('language');
    $load_language=$language;
    $file = ("lang/"."$load_language".".php");
    require ("$file");
    }
    session_start();
    if (!session_is_registered('language') || $_SESSION['language'] == "")
    {
    $load_language=en;
    $file = ("lang/"."$load_language".".php");
    }
    else
    {
    $load_language=$_SESSION('language');
    $file = ("lang/"."$load_language".".php");
    }
    require ("$file");
    ?>
    ----------------------------------------------------------------------------

    Die Sprachauswahl befindet sich in subnavi.tpl und sieht so aus:
    ----------------------------------------------------------------------------
    <a href="localhost/session/?lang=de"><img src="images/de.gif"></a>
    <a href="localhost/session/?lang=en"><img src="images/en.gif"></a>
    <a href="localhost/session/?lang=fr"><img src="images/fr.gif"></a>
    <a href="localhost/session/?lang=it"><img src="images/it.gif"></a>
    ----------------------------------------------------------------------------
    Das funktioniert soweit.
    Die Sprache ändern in test20.php den Text auf die gewählte Form.

    navi.php hat folgendes script:
    ----------------------------------------------------------------------------
    <a href="statisch.php?content=test20&lang=$lang">Test 20</a>
    <a href="statisch.php?content=test21&lang=$lang">Test 21</a>
    <a href="statisch.php?content=test22&lang=$lang">Test 22</a>
    <a href="statisch.php?content=test23&lang=$lang">Test 23</a>
    ----------------------------------------------------------------------------
    Jetzt wird automatisch den Standart 'en' übernommen.
    Wenn ich eine Sprachwahl getroffen habe,fällt diese weg,
    sobald ich ein anderes test-dokument auswähle.

    Was mache ich falsch?
    Wie kann ich die Sprachauswahl der Navigation richtig mitgeben?

    Gruss
    renate

  • #2
    Hi,
    wenn jemand <a href="statisch.php?content=test20&lang=$lang">Test 20</a> anklickt,

    muss du $language=$HTTP_GET_VARS['lang'] benutzen oder
    in site_init.tpl
    function lingua($HTTP_GET_VARS['lang']) und dann immer &lang=$lang beim anklicken benutzen.

    Hoffe richitg und hilft.

    Kommentar


    • #3
      Hallo ]LAW[Ghost

      Ich finde es schon super, das ich Hilfe bekomme, denn ich schlage mich wirklich schon seit Wochen mit diesem Problem herum!
      Vielen Dank!

      Nun ich habe folgendes geändert:
      <a href="statisch.php?content=test21&$language=$HTTP_GET_VARS['lang']">Test 21</a>

      dabei hat sich jedoch nichts verändert.
      Immer noch wird automatisch den Standart 'en' übernommen.
      Wenn ich eine Sprachwahl getroffen habe,fällt diese weg,
      sobald ich ein anderes test-dokument auswähle.

      Fehlermeldung erscheint keine.

      Wie komme ich in diesem Problem weiter?

      Gruss
      Renate

      Kommentar


      • #4
        Original geschrieben von Renate
        Hallo ]LAW[Ghost

        Ich finde es schon super, das ich Hilfe bekomme, denn ich schlage mich wirklich schon seit Wochen mit diesem Problem herum!
        Vielen Dank!

        Nun ich habe folgendes geändert:
        <a href="statisch.php?content=test21&[COLOR=red]$language[/COLOR]=$HTTP_GET_VARS['lang']">Test 21</a>

        dabei hat sich jedoch nichts verändert.
        Immer noch wird automatisch den Standart 'en' übernommen.
        Wenn ich eine Sprachwahl getroffen habe,fällt diese weg,
        sobald ich ein anderes test-dokument auswähle.

        Fehlermeldung erscheint keine.

        Wie komme ich in diesem Problem weiter?

        Gruss
        Renate
        [COLOR=red]$language[/COLOR] => Fehler. Du muss in

        <a href="statisch.php?content=test21&[color=blue]lang[/color]=$HTTP_GET_VARS['lang']">Test 21</a>

        ändern. HTH.

        Kommentar


        • #5
          mal frei aus dem Bauch heraus, ohne dein code richtig gelesen zu haben.

          Beispielmuster:
          PHP-Code:
          <?php
          session_start
          ()

          if(!isset(
          $_SESSION['lang']))
          {
          $_SESSION['lang'] = "de";
          }

           
          ?>
           <?php
           
          //Auswahlbox
           
          <form action="datei.php" method="post">
           <
          select name="lang" size="1">
           <
          option value="de">deutsch</option>
           <
          option value="en">denglisch</option>
            </
          select>
            <
          input type="submit" value="Abschicken">
            </
          form>
           
          ?>
           
           <?php
           
          if(!empty($_POST['lang']))
           {
           
          $_SESSION['lang'] = $_POST['lang'];
           
          //dann zurück zur zuletzt gesehenden Seite oder weiter
           
          }
            
          ?>
          Vorausgesetzt session funktioniert.
          Die extra angabe $lang in der Url ist dann nicht nötig
          mfg
          marc75

          <Platz für anderes>

          Kommentar


          • #6
            Hallo

            Vielen Dank für die spontane Hilfe!

            Ich denke, da alles nicht zum gewünschten Resultat führte, dass
            ich an der Sprachauswahl etwas ändern muss.
            Ich habe festgestellt, dass diese Links immer auf
            test1.php führen.

            <a href="localhost/session/?lang=de"><img src="images/de.gif"></a>

            Könnte das der Grund sein?

            Kommentar


            • #7
              Nun, vielleicht sehe ich das Problem jetzt zu blauäugig, aber:

              <a href="statisch.php?content=test21&$language=$HTTP_GET_VARS['lang']">Test 21</a>

              Ist das so als HTML-Code in der Seite? Oder insgesamt ein Variablenwert?

              Wenn 1:

              <a href="statisch.php?content=test21&lang=[COLOR=red]<?=$HTTP_GET_VARS['lang']?>[/COLOR]">Test 21</a>

              Wenn 2:

              $link='<a href="statisch.php?content=test21&lang=[COLOR=red]'.$HTTP_GET_VARS['lang'].'[/COLOR]">Test 21</a>';

              Oder habe ich das Problem total Missverstanden?

              Kommentar


              • #8
                Hallo
                Ich dachte, dass statisch.php die Seite zusammenstellt,
                wobei $content das Dokument, gemäss klick in navi.tpl, lädt.
                Dazu sollte es eben noch die Sprachvariable berücksichtigen.
                ___________________________________________________________________________________

                <a href="statisch.php?content=test21&$language=$HTTP_GET_VARS['lang']">Test 21</a>
                ___________________________________________________________________________________
                <?php
                // file: static.php
                // Zweck: Anzeige der unterschiedlichen angeforderten statischen Seiten
                // Funktionen und Sitevariablen lesen

                include("site_init.tpl"); // Initialization file (also funktionen ec.)
                // display the page header
                show_header($site_name);
                // display the page nevi
                show_subnavi();
                // display the page nevi
                show_navi();
                // display the requested content
                include("$content.php"); // Inhalte (also test20.php ec.)
                // display the page news
                show_news();
                // display the page footer
                show_footer();
                ?>
                ___________________________________________________________________________________

                In subnavi.tpl befinden sich die 4 Sprachen zur Auswahl
                <a href="localhost/?lang=de"><img src="images/de.gif" alt="Deutsch" border="0"></a>
                müsste hier auch statisch.php sowie ?$content plus ?lang stehen?

                Gruss
                renate

                Kommentar


                • #9
                  Hallo
                  sorry, wenn ich so nonsens schreibe,
                  doch ich sehe vor lauter hin und her den Ausgang nicht mehr aus diesem Probelm!

                  Gruss
                  renate

                  Kommentar


                  • #10
                    Hallo

                    Ich denke, dass ich wiedereinmal am Ende bin mit meinem Latein.

                    So oft sieht man eine mehrprachige Seite, in der man bei einem Klick auf das entsprechende Bild die Sprachauswahl wählen kann, darum muss es doch dafür eine logische Lösung geben.

                    Wie müsste diese aussehen?

                    Gruss
                    renate

                    Kommentar


                    • #11
                      Schau mal hier:
                      http://www.webmasterpro.de/content_tip-1359.php

                      Kommentar


                      • #12
                        Hallo Innuendo

                        vielen Dank für den Link,
                        ich werde die empfohlene Seite sehr intensiv durchgehen.

                        Gruss
                        Renate

                        Kommentar


                        • #13
                          Hallo

                          Ich suche noch Hilfe um die Sprachauswahl zu realisieren.

                          Ich möchte Bilder anklicken und die Sprache sollte dem entsprechend wechseln. Das funktioniert gut. Es greift jedoch immer auf test.php zurück.

                          Klicke ich nun in der Navigation auf test20.php fällt die gewählte Sprache weg und die Standarteinstellung english wird eingelesen.

                          Wie kann ich meine Wahl auch auf den anderen Seiten beibehalten?

                          Wie kann ich erreichen, dass wenn ich die Sprache auswähle, die geladene Seite bleibt und nicht test1.php auf dem Bildschirm erscheint?

                          Wer weiss Rat?

                          Gruss
                          renate

                          Kommentar


                          • #14
                            mal eine andere Frage, das Script selbst ist nicht von dir oder?
                            mfg
                            marc75

                            <Platz für anderes>

                            Kommentar


                            • #15
                              Hallo marc75

                              Zu deiner Frage:

                              Ich lerne an hand von Büchern PHP. Nun bin ich bei meinen Lektionen bei
                              einer Sprachauswahl angelangt, die mittels radiobutton realisiert ist.

                              Da versuche ich jetzt herauszufinden, wie diese Lösung mit images-buttons gemacht wird.

                              (Bei uns werden in der Umgebung keine php-Kurse angeboten Doch mit
                              den Lektionen im Heimstudium aus den Büchern konnte ich mir doch schon
                              ein wenig Kenntnisse erarbeiten)

                              Ziel ist es im 2006 eine Homepage für unseren Jahrgang zu realisieren,
                              damit alle ca 480 Schulkameraden Standortunabhängig eine Adressenliste
                              führen können und der Kontakt zum Ort indem die Schulbank gedrückt
                              wurde per Internet aufgerufen werden kann. Alte Bilder, Berichte ec, sollen diese Idee auflockern und ein Gästebuch den Kontakt untereinander
                              fördern. auch sollten die Jahrgänger Berichte und Bilder von überall in der Welt online stellen können.
                              Ich bin nicht so schnell im Lernen doch bis zu unserem nächsten Jahrgängertreff im 2006 habe ich noch Zeit und vorallem finde ich es sehr
                              interessant.

                              Gruss
                              Renate

                              Kommentar

                              Lädt...
                              X