tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
2
ZUGRIFFE
254
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Amokrunner Amokrunner ist offline Grünschnabel
    Registriert seit
    Jan 2005
    Beiträge
    2
    Also ich habe folgendes Problem, meine login.php is im index includet wenn man nun eingelogt is wird die index?section=admin aufgerufen, wo auch das Adminmenü erscheint jedoch wenn ich z.b wieder auf index?section=news gehe muss ich mich neu anmelden, wie gelingt es mir eingeloggt zu bleiben?

    Das ist mein Login.php
    PHP-Code:
        if(isset($_GET['action']) AND ("logout" == $_GET['action'])) {
            
    session_destroy();
        } else {
            
    // der Adminbereich, wenn nicht ausgelogt werden soll
            
    if(isset($_POST['UserID']) AND '0' == $_POST['UserID']) {
    $Wrong '<p>Bitte wählen sie einen Benutzernamen aus. </p>';
            } else {
                if(isset(
    $_POST['UserID'], $_POST['Password']) AND
                   
    login_right(addslashes($_POST['UserID']),
                               
    addslashes($_POST['Password']))) {
                    
    $_SESSION['ID'] = $_POST['UserID'];
                }
            
                if(isset(
    $_SESSION['ID'])) {
                    if(isset(
    $_GET['section']) OR isset($admin_site[$_GET['site']])) {
                    
                    } else {
                        
    $_SESSION = array('ID' => $_SESSION['ID'],
                                          
    'IP' => $_SESSION['IP']);
                                         }
                } else {
                }
                if(isset(
    $_SESSION['ID'])) {

                } else {
                    if(isset(
    $_POST['submit'])) {
                         
    // Der Submit-Button wurde gedrückt
                         // aber der Login ist falsch. Deshalb
                         // erstellen wir eine Fehlermeldung
    $Wrong2 '<p> Ungültiges Passwort. </p>';

                    }
                                    echo 
    "<form action=\"index.php?section=admin\" method=\"post\" class=\"admin_form\">\n";
                    echo 
    "    <table>\n";
                    echo 
    "        <tr>\n";
                    echo 
    "            <th colspan=\"2\">\n";
                    echo 
    "            </th>\n";
                    echo 
    "        </tr>\n";
                    echo 
    "        <tr>\n";
                    echo 
    "            <td>\n";
                    echo 
    "                <label for=\"name\"></label>\n";
                    echo 
    "            </td>\n";
                    echo 
    "            <td>\n";
                    
    $sql "SELECT
                                `ID`,
                                `Name`
                            FROM
                                `users`
                            ORDER BY
                                `Name` ASC;"
    ;
                    
    $result mysql_query($sql) OR die(mysql_error());
                    echo 
    "                <select size=\"1\" name=\"UserID\" id=\"name\">\n";
                    echo 
    "                    <option value=\"0\" size=\"5\"  selected=\"selected\">Name</option>\n";
                    while(
    $row mysql_fetch_assoc($result)) {
                        echo 
    "<option value=\"".$row['ID']."\">".$row['Name']."</option>\n";
                    }
                    echo 
    "                </select>\n";
                    echo 
    "            </td>\n";
                    echo 
    "        </tr>\n";
                    echo 
    "        <tr>\n";
                    echo 
    "            <td>\n";
                    echo 
    "                <label for=\"password\"></label>\n";
                    echo 
    "            </td>\n";
                    echo 
    "            <td>\n";
                    echo 
    "                <input type=\"password\" size=\"8\"  name=\"Password\"  id=\"password\" value=\"Password\" onBlur=\"if(this.value=='') this.value='Password';\" onFocus=\"if(this.value=='Password') this.value='';\">\n";
                
                    echo 
    "            </td>\n";
                    echo 
    "        </tr>\n";
                    echo 
    "        <tr>\n";
                    echo 
    "            <td colspan=\"2\">\n";
                    echo 
    "                <input type=\"submit\" name=\"submit\" size=\"30\" value=\"Login\" />\n";
                    echo 
    "            </td>\n";
                    echo 
    "        </tr>\n";
                    echo 
    "    </table>\n";
                    echo 
    "</form>\n";

                }
            }
                         
        }
    ?> 
    Index schaut wie folgt aus
    PHP-Code:
    if(isset($_GET['section']) AND ("admin" == $_GET['section'])) {
                      
    session_start();
                                include 
    "admin/admin_menu.php";    

                                } else {    
                            include 
    "Login.php";

            if(!isset(
    $_SESSION['IP'])) {
                
    $_SESSION['IP'] = $_SERVER['REMOTE_ADDR'];
            }
            if(
    $_SESSION['IP'] != $_SERVER['REMOTE_ADDR']) {
                echo 
    "<p class=\"error\">\n";
                echo 
    "    Sie dürfen nicht die Session von einem\n";
                echo 
    "    anderen user Benutzten. Bitte benutzen sie\n";
                echo 
    "    folgenden Link um zur Homepage zu gelangen.\n";
                echo 
    "    <a href=\"/\">Zurück zur Homepage</a>\n";
                echo 
    "</p>\n";
                die(); 
    // Aus Sicherheitsgründen die Abarbeitung sofort beenden
            
    }

    Meine Funktion

    PHP-Code:
     function login_right($id$pass)
        {
            
    $sql "SELECT
                        COUNT(*) as Anzahl
                    FROM
                        users
                    WHERE
                        ID = '"
    .$id."' AND
                        Password = MD5('"
    .$pass."');";
            
    $result mysql_query($sql) OR die(mysql_error());
            
    $row mysql_fetch_assoc($result);
            
    mysql_free_result($result);
            return 
    $row['Anzahl'];

        } 
    Es wäre nett wenn ihr mir helfen könntet
    Geändert von Amokrunner (19.02.06 um 21:21 Uhr)
     

  2. #2
    Avatar von son gohan
    son gohan son gohan ist offline Mitglied Diamant
    Registriert seit
    Dec 2004
    Beiträge
    1.742
    Das Beispiel von dir sieht mir nach dem Lginscript von http://tut.php-q.net/login.html aus. Vielleicht findest du dort Erklärungen.

    Ich selbst muss zugeben das mir diese Login Tutorial nicht viel geholfen hat, weil alles über eine index.php läuft und ich nicht zurecht kam mit allen den unterschiedlichen Sectionen.
     

  3. #3
    Amokrunner Amokrunner ist offline Grünschnabel
    Registriert seit
    Jan 2005
    Beiträge
    2
    Ja ist es jedoch hilft es mir nicht weiter und würde gerne wissen wie ich das hinkriege nach meinen vorstellungen wäre nett wenn sich jemand daran setzten würde
     

Ähnliche Themen

  1. Hilfe zu Login-System mit Sessions
    Von altes-gambrinus im Forum PHP
    Antworten: 13
    Letzter Beitrag: 23.01.10, 21:35
  2. Login mit Sessions
    Von SeeSharpNewBee im Forum Enterprise Java (JEE, J2EE, Spring & Co.)
    Antworten: 3
    Letzter Beitrag: 29.03.07, 11:25
  3. Antworten: 3
    Letzter Beitrag: 12.01.05, 21:14
  4. Login-System mit Sessions - Brauche Hilfe dazu!
    Von SonGokuuu im Forum Relationale Datenbanksysteme
    Antworten: 0
    Letzter Beitrag: 01.04.04, 20:29
  5. [PHP]-Login Sessions
    Von Blizzard im Forum PHP
    Antworten: 6
    Letzter Beitrag: 28.10.01, 18:57