Sessions - Weitergabe

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Sessions - Weitergabe

    Guten Morgen

    Sitze seit geraumer Zeit an einem kleinen Registrierungs/Anmeldeskrip und hänge bei der "Sessionübergabe"
    an ein anderes Dokument fest.

    Hier einmal alle inkludierten Dateien:

    index.php:
    PHP Code:
    <?php
    error_reporting
    (E_ALL);
    ini_set('display_errors'1);
    session_start ();
    ?>
    <html>
          <head>
                <title>Index</title>
                <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
          </head>
      
                 <body>
                       <center><form action="login.php" method="post"> //Übergabe der Werte an die login.php
    <table>
    <tr>
    <td>
        <fieldset>
            <legend>Anmelden:</legend>
            <label>Benutzername: <input type="text" name="benutzername" /></label>
            <label>Passwort: <input type="password" name="passwort" /></label>
            <input type="submit" name="formaction" value="Einloggen" />
        </fieldset>
    </td>
    </tr>
    </table>
    </form></center>
                      <center><form action="register.php" method="post">//Übergabe der Werte an die register.php
    <table>
    <tr>
    <td>
        <fieldset>
            <legend>Registrieren:</legend>
            <label>Benutzername: <input type="text" name="benutzername" /></label>
            <label>E-Mail: <input type="text" name="email" /></label>
            <label>Passwort: <input type="password" name="passwort" /></label>
            <input type="submit" name="formaction" value="Registrieren" />
        </fieldset>
    </tr>
    </td>
    </table>
    </form></center>
                </body>
    </html>
                </body>
    </html>
    dbconnect.php ist irrelevant, da die Datenbankverbindung in jedem Fall zustande kommt
    register.php ist auch irrelevant, da dort keine Session benötigt wird.

    logion.php: (Habe einmal alle Datenbankanweisungen zur verbesserten Übersichtlichkeit entfernt,
    desweiteren gehenw ir mal davon aus, dass die Daten korrekt sind, und man auf die intern.php weitergeleitet wird)
    PHP Code:
    <?php
    error_reporting
    (E_ALL);
    ini_set('display_errors'1);
    session_start();
    include(
    'dbconnect.php');

    //$nachricht= "Die eingegebenen Daten sind korrekt. Du wirst nun weitergeleitet";
      
    $_SESSION['benutzername'] = $row[0]; //ist definitiv der benötigte Name
      //print_r($_SESSION['benutzername']);
      
    header ("Location: intern.php");

    ?>
    intern.php:
    PHP Code:
    <?php
    error_reporting
    (E_ALL);
    ini_set('display_errors'1);
    include(
    'dbconnect.php');
    session_start ();  
    if (!isset (
    $_SESSION['benutzername']))  
    {
    print 
    "Session ungültig";
      exit;
    }
    else {  echo 
    "Hallo ".$_SESSION['benutzername']." ; 
    };
    ?>

    Mein Problem besteht darin, dass der gewünschte Inhalt der $_SESSION-Array zwar bis zum Ende der Datei login.php
    an seinem soll-Platz ist, in der intern.php wird die Existenz jedoch bestritten:

    PHP Code:
    NoticeUndefined variable_SESSION in intern.php on line 14 
    Ich würde mich freuen, wenn Ihr einem Anfänger wie mir ein bisschen bei der Fehleranalyse/-beseitigung helfen würdet


    Gruß
    Last edited by derhammerdolle; 30-01-2011, 08:43.

  • #2
    Notice: Undefined variable: _SESSION in intern.php on line 14
    Da fehlt sicherlich ein session_start()
    Wir werden alle sterben

    Comment


    • #3
      Hallo,

      erst einmal brichst du bitte den Code auf maximal 100 Zeichen um, dann erzählst du uns bitte, welche davon diese intern.php sein soll, denn keine davon hat in Zeile 14 irgendetwas von $_SESSION stehen. Dann überprüfst du bitte, ob session_start vor dem Zugriff auf $_SESSION bereits aufgerufen wurde (include-Reihenfolge). Falls dann noch Probleme auftreten, wäre es sinnvoll die Dateinamen dazuzuschreiben, denn so wird man daraus nicht schlau.

      BTW: Wir helfen ja gerne, aber einfach den gesamten Quelltext hinwerfen und uns den Fehler suchen lassen, läuft hier nicht

      Gruß,

      Amica
      [COLOR="DarkSlateGray"]Hast du die [COLOR="DarkSlateGray"]Grundlagen zur Fehlersuche[/color] gelesen? Hast du Code-Tags benutzt?
      Hast du als URL oder Domain-Beispiele example.com, example.net oder example.org benutzt?
      Super, danke!
      [/COLOR]

      Comment


      • #4
        <center> ist veraltet und sollte nicht mehr verwendet werden.

        Warum missbrauchst du Tabellen fürs Layout?

        Comment


        • #5
          Erst einmal vielen Dank für Eure Antworten, ich habe mal versucht die für mein Problem relevanten Codesegmente der jeweilig ineinander verzweigten Dateien in den Dateien zu lassen und das irrelevante erst einmal wegzulassen (siehe erster Beitrag

          Originally posted by h3ll View Post
          <center> ist veraltet und sollte nicht mehr verwendet werden.

          Warum missbrauchst du Tabellen fürs Layout?
          Hatte erst einmal keinen Wert auf ein anständiges Layout gelegt, daher etwas geschrieben, dass mir grad in den Sinn kam.

          Originally posted by combie View Post
          Da fehlt sicherlich ein session_start()
          Ist vorhanden

          Originally posted by AmicaNoctis View Post
          Hallo,

          erst einmal brichst du bitte den Code auf maximal 100 Zeichen um, dann erzählst du uns bitte, welche davon diese intern.php sein soll, denn keine davon hat in Zeile 14 irgendetwas von $_SESSION stehen. Dann überprüfst du bitte, ob session_start vor dem Zugriff auf $_SESSION bereits aufgerufen wurde (include-Reihenfolge). Falls dann noch Probleme auftreten, wäre es sinnvoll die Dateinamen dazuzuschreiben, denn so wird man daraus nicht schlau.

          BTW: Wir helfen ja gerne, aber einfach den gesamten Quelltext hinwerfen und uns den Fehler suchen lassen, läuft hier nicht

          Gruß,

          Amica
          okay, hat sich alles aufgeklärt , berichtigter Code s. oben



          Danke!
          Last edited by derhammerdolle; 30-01-2011, 09:05.

          Comment

          Working...
          X