Session-Variable

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

  • Session-Variable

    Hallo

    Im Moment habe ich mit meinen Session-Variablen ein Problem. Ich habe zwei Session-Variablen, eine selbst definierte und eine deren Inhalt ein Pfad zu bestimmten Dateien ist, dieser Pfad wird von einer PHP-Datei zur nächsten übergeben. Das zur allgemeinen Erklärung.

    Die selbst definierte ist in Ordnung, aber die zweite (Pfad) will partout nicht funktionieren und ich habe schon alles ausprobiert.

    Weiß hier jemand woran das liegen könnte?

    Vielen Dank schon mal im vorraus.

    Mit freundlichen Grüßen

    david2

  • #2
    Ähmm wieso bitte zwei Threads für ein und die selbe Problematik?

    Und wenn du schon hier schreibst du hast ein Problem dann bitte Code dazu damit man sehen kann wo dein Problem liegt!

    Hier gibt es Leute die dir sehr gut helfen können aber die Fähigkeit nach dem Glaskugelprinzip zu Arbeiten hat auch hier keiner!

    Nix für ungut aber zwei Threads und auch dem hier kein code wie es im ertsen schon mal geschrieben wurde!!! Da habsch keene Fragen mehr!

    Aber zum Problem! $_SESSION im Manual unter register globals dürfte dir helfen!

    Ich habe auch noch nicht so viel damit gemacht aber diese kannst du dann in jeder Datei mit session_start(); wieder aufrufen und verwenden! Aber dazu können dir hier andere mehr sagen!
    Zuletzt geändert von litterauspirna; 16.04.2008, 21:35.
    Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
    http://www.lit-web.de

    Kommentar


    • #3
      Hallo

      Ja das tut mir leid mit dem Code, deshalb trage ich ihn hier nach.

      MfG

      Hinzke


      PHP-Code:
      <?
      session_start();     
      ?>

      <html>
      <head>
      <title>Bildanzeige</title>

      <body bgcolor="#cccccc">
      <font face='Georgia, Times New Roman, Times, serif'></font>
      <style type="text/css">

      a:link {
          color: #0066CC;
      }
      a:visited {
          color: #999999;
      }
      a:hover {
          color: #ff0000;
      }

      <?

      global $cfile;
      $path=$_SESSION['xpath'];   <-- Diese Variable funktioniert nicht.
      $xstart=$_SESSION['xxstart'];  <-- Diese Variable funktioniert.
      //$_SESSION['xpath'] = $path;     
      //------------------------------------------------------------//
      //-------- Anzeige von 01.jpg beim Oeffnen der Galerie -------//
      //------------------------------------------------------------//

      if (($xstart<>1)||($file==""))  {    
           $file="01.jpg";
                    
           $xstart=1;  
      }    
           
        
      //---------------------------------------------------------------------------------------//
      //-------------Anzeige des Titels der Fotogalerie --- BEIDE Routinen -------//
      //---------------------------------------------------------------------------------------//

           $fp =fopen($path."/titel.txt","r");
             
                if ($fp)
                {
                  while (!feof($fp))
                   {
                    $zeile=fgets($fp,100);
         echo"<font size=\"4\" color=\"#cc3300\"><p><b><u>$zeile</u></b><p>";
                     
                   }
                 fclose ($fp); 
                }
            
         
      //---------------------------------------------------
      //------ Die Bildausgabe für BEIDE Routinen ---------
      //---------------------------------------------------

      $cut= strtok($file,".");  //string dateiendung von der jpg-Datei (Bild-Datei) abschneiden ab punkt 
       

       $anzeige=$cut;
       
       echo "<table align=\"center\">";                                           
       echo "<tr><td  align=\"center\"><img src=$path/$file></td></tr>";     
       echo "</table>";


      //-------------------------------------------------------------------------------------------//
      //------ Auslesen der Textdatei zur Anziege der Bildunterschrift wenn in Textdatei vorhanden -------//
      //----------------------------------- Auslesen für BEIDE Routinen ------------------//
      //-------------------------------------------------------------------------------------------//

           if ($anzeige != "")
            {
             $fp =fopen("$path/$anzeige.txt","r");
               
                if ($fp)
                 {
                   while (!feof($fp))
                    {
                     $zeile=fgets($fp,100);
                     echo"<font size=\"3\" color=\"#000000\"><p>$zeile<p>";
                     
                    }
                  fclose ($fp); 
                 }
                 else
                  { 
                   echo"<font size=\"3\" color=\"#000000\"><p>$zeile<br>";
                   echo"<font size=\"3\" color=\"#000000\">Keine Angaben oder kein Bild vorhanden.";     
                  }  
            } 
            
      $_SESSION['xpath']=$path;
      $_SESSION['xxstart']=$xstart;    

      //---------------------------------------------------------//
      //------- HTML Komponenten also die Schaltflaechen --------// 
      //---------------------------------------------------------//

      echo" <!--

      <form action='$PHP_SELF' method='_self'>

      <Table><tr>
        <td align='right' width='50'><input type='submit' name='submit' value='Erstes'></td>
        <!--<td align='center' width='55'><input type='submit' name='submit' value='Zurueck'></td>
        <td width='600'></td>
        <!--<td align='center' width='55'><input type='submit' name='submit' value='Weiter'></td>
        <!--<td align='left' width='50'><input type='submit' name='submit' value='Letztes'></td>
      </tr></Table>

      </form>
      -->
      ";


      ?>
      <!-- <table><tr><td height='1'></td></tr></table> -->
      </center>
      </body>

      </html>
      Zuletzt geändert von david2; 16.04.2008, 21:39.

      Kommentar


      • #4
        PHP-Code:
        $path=$_SESSION['xpath'];   <-- Diese Variable funktioniert nicht.
        $xstart=$_SESSION['xxstart'];  <-- Diese Variable funktioniert
        Sorry, das ist Unsinn!


        Da machst du sie selber kaputt:
        PHP-Code:
         $_SESSION['xpath']=$path
        $_SESSION['xxstart']=$xstart
        Nur wie, das weiß ich leider nicht...

        Aber, warum abeitest du nicht direkt mit den Sessionvariablen?

        PS:
        $PHP_SELF ist grausam!
        1. öffnet es dein Script für XSS Attacken
        2. Funktioniert es nur mit register_globals=on

        global $cfile; ist flüssiger als Wasser -> überflüssig!
        Zuletzt geändert von combie; 16.04.2008, 21:48.
        Wir werden alle sterben

        Kommentar


        • #5
          Lass dir mal $_SESSION mit var_dump ausgeben.

          Am besten einmal direkt nach session_start und einmal am Ende des Skripts.

          Kommentar


          • #6
            Auch solltest du dir abgewöhnen mit short tags zu arbeiten!

            Also anstatt so zu schreiben <? ?> soltest du so schreiben <?php ?>
            Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
            http://www.lit-web.de

            Kommentar


            • #7
              Hallo Combie

              Wie meinst du dass bitte? Das sind doch Session-Variablen.

              Ich sollte vielleicht dazu sagen, dass ich zwar in PHP programmieren kann, aber ich kenne mich noch nicht in allen Details damit aus.

              MfG

              david2

              Kommentar


              • #8
                Wie meinst du dass bitte? Das sind doch Session-Variablen.
                Genau darum!
                Nirgendwo wird $path benutzt! *doch*
                Was eierst du denn überhaupt damit rum?
                Ich sehe den Sinn nicht!
                Zuletzt geändert von combie; 16.04.2008, 22:25.
                Wir werden alle sterben

                Kommentar


                • #9
                  Hallo Combie

                  $path ist die Variable, die den erwähnten Pfad enthält.

                  MfG

                  david2

                  Kommentar


                  • #10
                    Hast du dir die $path denn schon zum Test mal ausgeben lassen und geprüft ob überhaupt was drin steht?

                    Wo kommt denn der Wert aus dem Vorfeld überhaupt her,vieleicht läuft schon dort was verkehrt!
                    Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
                    http://www.lit-web.de

                    Kommentar


                    • #11
                      Ja ich habe mir die $path ausgeben lassen und zu Anfang funktioniert sie auch, aber ab $path=$_SESSION['xpath'] funktioniert es nicht mehr.

                      MfG

                      david2

                      Kommentar


                      • #12
                        Was is jetzt mit dem var_dump?

                        Kommentar


                        • #13
                          Hallo h3ll

                          var_dump hat den Pfadnamen ausgeben. Er ist sowohl in $path als auch in $_SESSION['$xpath'] enthalten. Vielleicht habe ich irgendwo einen Denkfehler drin.


                          Mit freundlichen Grüßen

                          david2

                          Kommentar


                          • #14
                            Und wo ist jetzt eigentlich dein Problem, wenns eh da ist?

                            Kommentar


                            • #15
                              Hallo

                              Ich denke mal, dass das Problem darin begründet liegt, dass PHP nicht wie eine "normale" Programmiersprache, wie zum Beispiel C, ist. Da werden alle Variablen so lange gespeichert wie das Programm läuft. In PHP muss man SESSION-Variablen benutzen, wenn das Programm in einer Schleife laufen soll.

                              Danke für die Hilfe an alle und einen schönen Abend noch.

                              Mit freundlichen Grüßen

                              david2

                              Kommentar

                              Lädt...
                              X