Session Frage / Weiterleitung

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

  • Session Frage / Weiterleitung

    Hallo zusammen,

    ich hab folgendes Problem. Ich möchte auf meiner Seite
    http://<a href="http://www.besuchtun...uchtuns.de</a> nen Administrationsteil machen.
    Passwort und User sollen in der Session gespeichert werden und die
    gespeicherten Daten mit den Einträgen in der Datenbank verglichen
    werden. Das funktioniert auch soweit. Ich hab nur ein Problem dass
    er mir sobald ich 2x hintereinander auf den Button Administration
    klicke bleibt die Seite weiss, solange bis ich die Seite neu
    aufrufe (die gesamte Website) oder die Cookies im Browsercache
    lösche. Das ist allerdings nicht Sinn der Sache. Er soll wenn
    möglich solange die Sessiondaten korrekt sind automatisch auf die
    Administrationsseite gehen. Ursprünglich war das ganze mit
    htaccess geschützt nur leider läuft htaccess auf meinem aktuellen
    Webspace nicht und den Fehler kann ich leider nicht beheben. Daher
    wollte ich es mit einer Session probieren. Hier mein Quellcode:
    PHP-Code:

    <?php
    session_start
    ();

    include (
    "connect.php");
    mysql_select_db($tabelle$db);




                if ((
    $_SESSION['LoginData']['LoggedIn']===true))
                {
                    
    $User $_POST['User'];
                    
    $Password $_POST['Password'];

                    
    $sql1 "SELECT * FROM besuchtuns WHERE User
                    LIKE '%
    $User%'";

                        if (!
    $result mysql_query($sql1$db))
                          {
                             echo 
    mysql_error();
                          }
                        else
                          {
                             while (
    $row =
                             
    mysql_fetch_object($result))
                                {
                                     
    $pw $row->Password;
                                    
    $Name $row->User;
                                }


                            if  ((
    $Name) == ($User))
                                {
                                    
    $sql1 "SELECT * FROM
                                    besuchtuns WHERE User LIKE
                                    '%
    $User%'";

                                        if (!
    $result =
                                        
    mysql_query($sql1$db))
                                              {
                                                   echo
                                                   
    mysql_error();
                                            }
                                        else
                                            {

                                                  while (
    $row =
                                                  
    mysql_fetch_object($result))
                                                    {

                                                        
    $passw =
                                                        
    $row->Password;
                                                          
    $Nik =
                                                          
    $row->User;


                                                    }

                                                if  ((
    $User) !=
                                                (
    $Nik))
                                                     {

                                                           echo
                                                           
    "<br>Du
                                                           bist hier
                                                           leider
                                                           nicht
                                                           angemeldet"
    ;


                                                       }

                                                else
                                                   {
                                                        if
                                                        ((
    $Password)
                                                        != (
    $passw))
                                                               {
                                                                echo
                                                                
    "Dein
                                                                Passwort
                                                                passt
                                                                nicht
                                                                zu
                                                                deinem
                                                                User!
                                                                Bitte
                                                                Versuch
                                                                es
                                                                erneut!
                                                                <form
                                                                method
                                                                =
                                                                \"post\"
                                                                action
                                                                =\""
    .$SERVER['PHP_SELF']."\">
                                                                <input
                                                                type=\"button\"
                                                                value=\"Zurück\"
                                                                name=\"back_button\"
                                                                onClick=\"javascript:history.back(1)\">
                                                                </form>"
    ;
                                                                    
    Session_destroy();
                                                             }
                                                         else
                                                             {
                                                                if
                                                                ((
    $User
                                                                
    ==
                                                                
    $Nik))
                                                                           {
                                                                             ...}
    ?>
    LG Anja

  • #2
    als erstes mach mal session_destroy() oder lass das ganz weg, aber ganz check ich dein script eh nich wo wird diese session variable gefüllt?

    $_SESSION['LoginData']['LoggedIn']===true

    Kommentar


    • #3
      von formatierung deines quellcodes fang ich erst garnicht an...aber
      PHP-Code:
      $sql1 "SELECT * FROM besuchtuns WHERE User LIKE '%$User%'"
      das ist totaler ober käse. du suchst nach dem benutzernamen, den in etwa so heißt wie angegeben...
      wenn dann
      PHP-Code:
      $sql1 "SELECT * FROM besuchtuns WHERE User='".$User."' 
      EDIT:
      und wieso bitte machst du 2mal ne SQL Abfrage nach dem Username? Die wird doch oben scho gemacht, wieso also nochmal unten?
      Sunshine CMS
      BannerAdManagement
      Borlabs - because we make IT easier
      Formulargenerator [color=red]Neu![/color]
      Herkunftsstatistik [color=red]Neu![/color]

      Kommentar


      • #4
        Hab mal den gesamten Code angehängt. Konnte durch die Begrenzgung der Zeichen nicht den gesamten Code posten.

        Die Abfrage an die Datenbank kommt zweimal weil ich zwei verschiedene Variablen benutze, wobei ich da theoeretisch auch einfach die variable anders zuweisen könnte da gebe ich dir recht.

        Das mit dem = anstatt LIKE ist eine gute Idee. Ich programmier zwar schon ein bisschen mit PHP habe aber bisher immer nur von LIKE gelesen und auch bei Fragen immer nur eine Antwort in der richtung bekommen. Aber der Tipp ist sehr gut.
        Danke
        Angehängte Dateien

        Kommentar

        Lädt...
        X