php-script mit pn oder envolution

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

  • php-script mit pn oder envolution

    hallo,

    weis nicht ob das hier das richtige forum ist.

    ich hab ein kleines php-script, das ich mit post-wrap aufrufe. in dem script gibt es sprachdateien, die der user beim erstellen eines accounts auswählen kann.

    meine frage ist jetzt kann ich irgendwie die vom user ausgewählte sprache auf der hauptseite auslesen und in dem php-script damit die Sprachdatei definieren.
    noch besser währe es, wenn ich auch irgendwie die userdaten aus envolution für das script nutzen könnte.

    aber nur die sprachauswahl würde mir schon reichen.

    für einen tip von den profis währe ich sehr dankbar.
    Heavy

  • #2
    naja wenn ich Dich richtig verstanden habe, musst Du die auswahl der Sprachdatei, z.b. 'german.mp3' doch nur noch in den Userdaten in der DB (falls Du eine nutzt) abspeichern, und beim Login auslesen....
    [color=red]Parse error: parse error, unexpected T_STRING in signature.php on line 47[/color]

    Kommentar


    • #3
      hi,

      momentan löse ich das ganze so

      Code:
      function MainHeader() {
          global $ID;
          global $noLogout;
          global $lang;
              
          if (!isset($ID)) {
              header ("Location: index.php");
              exit;
          }
      $LanguageSQL = "SELECT player.language AS language FROM player where playerid = '".$ID."'";
      $LanguageRes = sql_query($LanguageSQL);
      $LanguageRow = sql_fetch_array($LanguageRes);
      
      $Language = $LanguageRow["language"];
      
      $languagefile="lang/$Language.inc.php";
      include("$languagefile");
      auf der hauptseite, also im cms kann der user aber bereits zwischen 4 sprachen wählen.
      was ich jetzt gerne hätte, ist dass ich in meiner funktions.inc irgendwie die vom user im cms gewählte sprache nutzen kann, um in meinem script die entsprechende sprachdatei includen zu können.
      bei postnuke, envolution steht doch irgendwo eine variable zur verfügung, die entweder deu, eng, fra oder ita ist. wenn ich die jetzt auslesen könnte, könnte ich mir die abfrage sparen und einfach sagen

      Code:
      if (pnlanguage=deu){
        include("lang/german.inc.php")
      }
      nur wie bekomme ich pnlang. und genau das ist meine frage.
      Heavy

      Kommentar


      • #4
        Du schreibst die $pnlanguage (z.b. in die db als 'german')
        und dann :

        PHP-Code:
        if ($pnlanguage != ''){
        include(
        "lang/$pnlaunguage.inc.php")
        }ELSE{
        include(
        "lang/default.inc.php")

        [color=red]Parse error: parse error, unexpected T_STRING in signature.php on line 47[/color]

        Kommentar


        • #5
          also das kapier ich nicht.
          woher kommt denn die pn language. ich will doch nur, wenn der user im cms die sprache von z.b. englisch auf deutsch wechselt, dass auch im php script die sprache geändert wird. sprachvariablen für alle vier sprachen hab ich im script schon definiert.

          gibt es nicht irgend einen pn-befehl, mit dem man die gewählte sprache auslesen kann und dann damit weiterarbeiten kann?

          ich meine in einem anderen modul was gesehen zu haben wie

          getPNlanguage()

          nur funzt das nicht, weil ich nicht weis wie ich das einstzen soll.
          Heavy

          Kommentar


          • #6
            was steht denn da drinne: ?

            PHP-Code:
            $Language $LanguageRow["language"]; 
            [color=red]Parse error: parse error, unexpected T_STRING in signature.php on line 47[/color]

            Kommentar


            • #7
              da steht entweder deutsch, english, french oder italien drin, da meine sprachdateien genau so heisen.

              z.b. deutsch.inc.php

              die sprachdateien sind dann so aufgebaut

              $lang['USERNAME']= "Username:";
              $lang['PASSWORD']= "Passwort";

              in der stanalone version des scriptes funktioniert das auch super. nur muss der user sich in postnuke anmelden und im script nochmal. genauso muss er in postnuke eine sprache wählen und im script auch, da verschiedene tabellen benutzt werden.

              wenn in postnuke die sprache geändert wird, sieht der aufruf so aus

              http://localhost/index.php?newlang=deu

              genau dieses 'deu' am ende muss ja irgendwie auch für das phpscript abrufbar sein. leider konnte ich bis noch nicht rausfinden wie und wo das gespeichert ist bzw. abrufbar ist.
              Heavy

              Kommentar


              • #8
                so... !!!


                PHP-Code:

                include("lang/$Language.inc.php"
                [color=red]Parse error: parse error, unexpected T_STRING in signature.php on line 47[/color]

                Kommentar


                • #9
                  irgendwie reden wir aneinander vorbei.

                  wie ich eine sprachdatei includen kann weis ich auch. das hab ich in meinem phpscript auch so gemacht.

                  meine frage bezieht sich lediglich auf die in postnuke verwendete sprache, um die dan für meinen include im phpscript verwenden zu können.
                  Heavy

                  Kommentar


                  • #10
                    schon, aber Du sagst doch das in
                    PHP-Code:
                    $Language $LanguageRow["language"]; 
                    die Usersprache drinne steht....

                    dann kannst Du doch nen Include machen so wie ich Ihn eben geschrieben habe....
                    [color=red]Parse error: parse error, unexpected T_STRING in signature.php on line 47[/color]

                    Kommentar


                    • #11
                      das hab ich doch auch so gemacht.

                      in der db-tabelle des phpscriptes wird beim anlegen eines neuen useraccounts auch die vom user gewählte sprache gespeichert. die include ich doch bereits, indem ich mit der abfrage

                      PHP-Code:
                      $LanguageSQL "SELECT player.language AS language FROM player where playerid = '".$ID."'";
                      $LanguageRes sql_query($LanguageSQL);
                      $LanguageRow sql_fetch_array($LanguageRes);

                      $Language $LanguageRow["language"]; 
                      die sprache des users auslese.

                      ich will doch jetzt lediglich anstatt dieser abfrage die vom user in postnuke gewählte sprache als basis für meinen include befehl nutzen.
                      Heavy

                      Kommentar

                      Lädt...
                      X