Session und Section

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

  • Session und Section

    Hi stehe nun wieder vor einem Problem. Habe danach gesucht aber nix genaues gefunden. Also mein Problem ist folgendes, wenn ich mich einlogge verweise ich mit
    PHP-Code:
    header("location:index.php?section=admin"
    auf die AdminZone doch diese wird nicht angezeigt, anscheinend wird die Session nicht übergeben oder sonst was. Benutze ich einfach
    PHP-Code:
    header("location:admin.php"
    funktioniert das!

    Kann mir jemand dabei behilflich sein.


    Danke

    mfg INu

  • #2
    Wie sehen deine index.php und deine admin.php aus?
    andreas.mkq.de

    Kommentar


    • #3
      Versuch mal einen absoluten pfad inc. http:// und nutze exit() nach dem header befehl.
      gruss Chris

      [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

      Kommentar


      • #4
        admin.php

        PHP-Code:

        session_start
        ();

        if (! 
        session_is_registered('username'))
           {
           die (
        "Du musst dich zuerst einloggen!");
           }
        if (
        $level 0) {
           
        $status "Member";
           }
        elseif (
        $level 1) {
           
        $status "Admin";
        }
        echo 
        '<table border="1" cellspacing="0" cellpading="3">
              <tr><td width="150"><b>Adminzone</b></td></tr>
              <tr>
              <td>
                   <b>Hallo, '
        .$status.' '.$username.' !
                   <br>
                   <br>
                    //kommende funktionen
                   <a href="logout.php">LOGOUT</a><br>
              </td>
              </tr>
              </table>'

        und die index.php

        PHP-Code:
        include"config/config_seiten.php";

        echo 
        ' <!doctype html public "-//W3C//DTD HTML 4.01 Transitional//EN">';
        echo 
        ' <html>';
        echo 
        ' <body text="#000000" bgcolor="#FFFFFF" link="#FF0000" alink="#FF0000" vlink="#FF0000" >';

        echo 
        ' <table border="1" cellpadding="2" cellspacing="0"align="center" >';
        echo 
        ' <tr> ';
        echo 
        ' <td width="800" colspan="3">Banner</td> ';
        echo 
        ' </tr>   ';
        echo 
        ' <tr>  ';
        echo 
        ' <td width="150" height="500" valign="top">';

        include(
        "turnier_nav_links.php");//linke Navigation

        echo ' </td>';
        echo 
        ' <td width="500" height="500" valign="top">';

        include(
        "inhalt.php"); //inhalt wird ausgegeben

        echo ' </td>';
        echo 
        ' <td width="150" height="500" valign="top">';

        include(
        "turnier_nav_rechts.php");//rechte Navigation

        echo ' </td>';
        echo 
        ' </tr>';
        echo 
        ' <tr>';
        echo 
        ' <td colspan="3" align="center"><font face="COURIER NEW" size="2">&copy; blabla</font></td>';
        echo 
        ' </tr>';
        echo 
        ' </table>';

        echo 
        ' </body>';
        echo 
        ' </html>'

        Kommentar


        • #5
          Und wo loggst du dich ein?

          Wozu postest du die index.php?
          Da steht nichts Problem relevantes drin..

          Es sei denn im includeten inhalt ist das Login Formular oder sowas.
          gruss Chris

          [color=blue]Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."[/color]

          Kommentar


          • #6
            Ich hab ihn ja gebeten die index.php zu posten - weil ich hoffte, die würde aufschluss geben...

            Jetzt interessier ich mich für die inhalt.php.
            Aber vielleicht sollte man in erwägung ziehen auch der index.php am anfang ein session_start() zu schenken, oder?
            andreas.mkq.de

            Kommentar


            • #7
              die index.php hab ich nach Wunsch von el muesli gepostet.

              so hab den Fehler gefunden, aber jetzt kommt ein weiteres Problem er gibt mir folgende Fehlermeldung aus :

              Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at E:\Programme\xampp\htdocs\Deadline Cup\index.php:4) in E:\Programme\xampp\htdocs\Deadline Cup\admin.php on line 2
              und das genau 2mal und darunter ist das AdminInterface

              und hier nochh einmal die Codes:

              login_anfrage.php

              PHP-Code:
              session_start();

              include(
              "function/function.php");


              $username $_POST['username'];
              $userpass $_POST['userpass'];
              $login $_POST['login'];

              connection();

              $query "SELECT username, userpass, userlevel FROM turnier_user WHERE username = '$username' and userpass = MD5('$userpass')";

              $result mysql_query($query);
              //$level = $daten["userlevel"];


              if (!empty($_POST)) {
                 if (empty(
              $username) or empty($userpass)) {
                    echo 
              "Bitte fülle alle Felder aus";
                 }
                 elseif (!
              mysql_num_rows($result))
                 {
                    echo 
              "Username oder Passwort sind falsch, bitte überprüfe deine Groß- und Kleinschreibung!";
                 } else {
                    
              session_register('username');
                    
              session_register('level');
                    
              header("location:index.php?section=admin");
                    exit();
                        }

              admin.php

              PHP-Code:
              session_start();

              if (! 
              session_is_registered('username'))
                 {
                 die (
              "Du musst dich zuerst einloggen!");
                 }
              if (
              $level 0) {
                 
              $status "Member";
                 }
              elseif (
              $level 1) {
                 
              $status "Admin";
              }
              echo 
              '<table border="1" cellspacing="0" cellpading="3">
                    <tr><td width="150"><b>Adminzone</b></td></tr>
                    <tr>
                    <td>
                         <b>Hallo, '
              .$status.' '.$username.' !
                         <br>
                         <br>
                          //kommende funktionen
                         <a href="logout.php">LOGOUT</a><br>
                    </td>
                    </tr>
                    </table>'

              Kommentar


              • #8
                LOL danke el muesli das war das Problem die session_start() hat in der index gefehlt danke man bin ich doof

                Kommentar


                • #9
                  mehrfache session_start() sind nicht zulässig, genauer:

                  As of PHP 4.3.3, calling session_start() while the session has already been started will result in an error of level E_NOTICE. Also, the second session start will simply be ignored.

                  anhand deiner session_register() und so ist das skript auf einem veralteten Niveau.
                  Eventuell lohnt es sich, das in Ordnung zu bringen?

                  Kommentar

                  Lädt...
                  X