session / offline / variable nicht auslesen

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

  • session / offline / variable nicht auslesen

    Mein Script das die Session startet und das mich einloggt ...

    PHP-Code:
    <?
    include("pwd.php");
    if((!isset($_POST["pwd"]) && (!isset($_POST["user"]) || $_POST["pwd"]!=$password) || $_POST["user"]!=$user)) {
    header("location: index.php?msg=Falsches Passwort oder Login ist fehlgeschlagen. Bitte erneut versuchen!");
    }
    elseif(($user == "") && ($password == "")) {header("location: index.php?msg=Falsches Passwort oder Login ist fehlgeschlagen. Bitte erneut versuchen!");
    }else{
    session_start();
    $_SESSION["pwd"]=$_POST["pwd"];
    $_SESSION["user"]=$_POST["user"];
    $sid=session_id();
    header("location: index.php");
    }
    ?>
    Das Script mit dem ich auf den anderen Seiten die Session aktivieren und nutzen möchte ...
    PHP-Code:
    <?
    session_start();
    include("pwd.php");
    if((!isset($_SESSION["pwd"]) && (!isset($_SESSION["user"]) || $_SESSION["pwd"]!=$password) || $_SESSION["user"]!=$user)){

    echo "<span style=\"font:20px bold Verdana,Arial,Geneva,Helvetica,sans-serif\">ERROR</span><br>
    <span style=\"font:12px Verdana,Arial,Geneva,Helvetica,sans-serif\">Vorgang fehlgeschlagen. Bitte einloggen!!</span>";
    die;
    }
    ?>
    ... nur leider kann ich offline die Variable nicht auslesen?? Ich komm immer auf die ERROR - funktion??

    hab in der php.ini schon session.save_path = C:\TEMP gesetzt - muß ich noch etwas setzen oder liegts am script oder an ganz was anderem???

    wäre toll, wenn ihr mir helfen könntet!

    jeichi

  • #2
    wo kommen im zweiten skript $user und $password her?
    Aus der Session nicht, denn die fragst du ja korrekt mit $_SESSION['user'] ab.
    so wie ich dein einloggen verstanden hab, gibt es die session-variablen aber sowieso nur dann, wenn das einloggen erfolgreichwar, dann sollte sowas reichen:
    PHP-Code:
    <?php
    session_start
    ();
    include 
    'pwd.php';

    //Kontrollausgabe - Anfang
    echo '<pre>';
    print_r($_SESSION);
    echo 
    '<pre>';
    //Kontrollausgabe - Ende

    if (!isset($_SESSION['user'], $_SESSION['password']))
    {
      
    header('location: http://www.deinedomain.tld/login.php');
      die();
    }
    ?>
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      erstmal danke! hab dein script versucht und im internet funktioniert es auch und das password und der user werden ausgelesen und angezeigt!

      aber offline wird wieder nichts ausgelesen????

      brauche das ganze für http://www.jeichi.com/sloe - kannst dich mit test test einloggen - dann soll nämlich einfach unten nur immer ausloggen stehen! im netz funktioniert das ganze, aber offline nicht!

      offline steht zwar nach der anmeldung ob das password und user korrekt sind/waren, aber auf den nächsten dateien kann ich eben nicht auf sie zugreifen bzw. sie auslesen???

      Kommentar


      • #4
        was hast du denn offline (lokal?) für ne kontrollausgabe?
        Ich denke, also bin ich. - Einige sind trotzdem...

        Kommentar


        • #5
          Array
          (
          )

          Warning: Cannot add header information - headers already sent by (output started at c:\apache\apache\htdocs\sloe\versuch.php:6) in c:\apache\apache\htdocs\sloe\versuch.php on line 13
          das bekomm ich ausgeworfen

          und das bekomm ich im internet als antwort

          Array
          (
          [pwd] => test
          [user] => test
          )

          Warning: Cannot add header information - headers already sent by (output started at /home/sites/site217/web/sloe/versuch.php:6) in /home/sites/site217/web/sloe/versuch.php on line 13

          Kommentar


          • #6
            dann bleibt lokal die session leer

            mach hinter
            PHP-Code:
            session_start();
            $_SESSION["pwd"]=$_POST["pwd"];
            $_SESSION["user"]=$_POST["user"]; 
            auch mal die kontrollausgabe

            ausgabe?
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              Ausgabe:

              Array
              (
              [pwd] =>
              [user] =>
              )

              Warning: Cannot add header information - headers already sent by (output started at c:\apache\apache\htdocs\sloe\versuch.php:9) in c:\apache\apache\htdocs\sloe\versuch.php on line 16

              Kommentar


              • #8
                hast du das prüfen und das einloggen in der selben datei?
                in den meldungen steht nämlich immer der selbe dateiname
                Ich denke, also bin ich. - Einige sind trotzdem...

                Kommentar


                • #9
                  hab meine index.php in der ich einfach user und passwort eingebe - dann geht das ganze auf die login.php

                  PHP-Code:
                  <?
                  include("pwd.php");
                  if((!isset($_POST["pwd"]) && (!isset($_POST["user"]) || $_POST["pwd"]!=$password) || $_POST["user"]!=$user)) {
                  header("location: index.php?msg=Falsches Passwort oder Login ist fehlgeschlagen. Bitte erneut versuchen!");
                  }
                  elseif(($user == "") && ($password == "")) {header("location: index.php?msg=Falsches Passwort oder Login ist fehlgeschlagen. Bitte erneut versuchen!");
                  }else{
                  session_start();
                  $_SESSION["pwd"]=$_POST["pwd"];
                  $_SESSION["user"]=$_POST["user"];
                  $sid=session_id();
                  header("location: index.php");
                  }
                  ?>
                  die include datei pwd.php sieht folgendermaßen aus:

                  PHP-Code:
                  <?

                   mysql_connect("localhost","user","*****");
                   mysql_select_db("db");


                   $sql = "SELECT * from login WHERE User LIKE '$user' AND Code LIKE '$pwd'";
                   $result = mysql_query($sql);
                   $v = mysql_fetch_array($result);

                   
                   $user=$v[User];
                   $password="$v[Code]";

                  ?>
                  und dann eben auf eine andere seite zb

                  PHP-Code:
                  <?
                  session_start();
                  require("pwd.php");
                  ?>
                  <?
                  if((!isset($_SESSION["pwd"]) && (!isset($_SESSION["user"]) || $_SESSION["pwd"]!=$password) || $_SESSION["user"]!=$user)){

                  echo "<span style=\"font:20px bold Verdana,Arial,Geneva,Helvetica,sans-serif\">ERROR</span><br>
                  <span style=\"font:12px Verdana,Arial,Geneva,Helvetica,sans-serif\">Vorgang fehlgeschlagen. Bitte einloggen!!</span>";

                  die;
                  }
                  ?>

                  Kommentar


                  • #10
                    user und pwd sind die namen der felder im login-formular?
                    dann daref der code in pwd.php nur ausgeführt werden, wenn auch das formular abgeschickt wurde

                    du musst vorher prüfen, ob was in der session steht


                    tipp von mir: schau mal bei den tutorials
                    Ich denke, also bin ich. - Einige sind trotzdem...

                    Kommentar

                    Lädt...
                    X