tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
5
ZUGRIFFE
549
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Registriert seit
    Nov 2002
    Beiträge
    383
    hey leute

    hab ein "kleines" problem mit meinem loginscript, welches zwar die sessions mit richtigem inhalt setzt, aber sie nicht auslesen kann

    hier die codestücke



    die loginfunktion
    PHP-Code:
    function login($member_nick$member_password$tbl_member)
        {
            if(isset(
    $member_nick) == true
            { 
                
    //Verbinde zu Datenbank
                
    $db_handle db_connect();
                                     
                 
    $result_login mysql_query("SELECT member_nick,member_password FROM $tbl_member WHERE member_nick = '$member_nick'") or die(mysql_error());
            
                if(
    $login_name_vorhanden=mysql_num_rows($result_login)!=0)
                {
                    
    $member_password md5($member_password);
              
                    while(
    $row_login mysql_fetch_object($result_login)) 
                    { 
                        if(
    $row_login->member_nick == $member_nick && $row_login->member_password ==$member_password)  
                        { 
                            
    session_register($member_nick);
                            
    $meldung=""
                        } 
                        else 
                            
    $meldung="incorect pass";     
                    }
                }
                else
                {
                    
    $meldung="user not found";
                }
                
                
    db_close($db_handle);
            }
            return 
    $meldung;
        } 
    index
    PHP-Code:
    if(isset($_POST['login']) || !empty($_POST['login']))
        {
            
    $loginmeldung=login($_POST['username'], $_POST['password'], $tbl_member);
        }

    //anderer quellcode ...

    if(session_is_registered("user_s"))
                                {  
                                    echo 
    "Hallo $user_s, wie gehts?";
                                }
                                elseif(!
    session_is_registered("user_s"))
                                {
                                    echo
    "
                                        <table border=0 cellspacing=0 cellpadding=0> 
                                               <tr> 
                                                <td background=images/single.gif width=12 rowspan=2 >&nbsp;</td>
                                                  <td>
    $loginmeldung</td> 
                                            </tr> 
                                        </table>
                                        <form name=form method=post action=index.php> 
                                            <table border=0 cellspacing=0 cellpadding=0> 
                                                <tr> 
                                                    <td background=images/single.gif width=12 rowspan=2 >&nbsp;</td>
                                                      <td><input class=username type=text name=username></td> 
                                                </tr> 
                                                <tr> 
                                                     <td><input class=password type=password name=password size=9><img src=images/images/single.gif width=1 height=1><input type=submit name=Submit value=login><input type=hidden name=login value=login></td> 
                                                 </tr>
                                                 </tr><td background=images/single.gif height=10></td></tr>
                                             </table> 
                                         </form>
                                        "
    ;
                                   } 
    die session wird mit richtige inhalt (benutzernamen) gesetzt, jedoch wird immer das formular zur benutzerdaten eingabe ausgegeben

    hoffe, dass ihr mir weiterhelfen könnt && wollt

    danke gruß kon
     

  2. #2
    Avatar von won_gak
    won_gak won_gak ist offline Mitglied Brokat
    Registriert seit
    Dec 2002
    Ort
    Frankfurt/Main
    Beiträge
    470
    Nur als Tipp: du solltest $_SESSION verwenden (PHP > 4.1.0).
    Dann hast du die session_register Probleme auch nicht.

    PHP-Code:
    if(session_is_registered("user_s")) 
    Diese Zeile sieht mir komisch aus. Weil du nirgends eine session_register ("user_s") Anweisung hast.
     
    ~WonGak~

    "And if there is a god, I know he likes to rock."

  3. #3
    Registriert seit
    Nov 2002
    Beiträge
    383
    so habs jetzt ein wenig abgeändert, jedoch funktionier ist leider trozdem noch nicht die session wird gesetzt, jedoch kann sie nicht ausgelesen werden.

    die funktion login
    PHP-Code:
    function login($user_s$member_password$tbl_member)
        {
            if(isset(
    $user_s) == true
            { 
                
    //Verbinde zu Datenbank
                
    $db_handle db_connect();
                                     
                 
    $result_login mysql_query("SELECT member_nick,member_password FROM $tbl_member WHERE member_nick = '$user_s'") or die(mysql_error());
            
                if(
    $login_name_vorhanden=mysql_num_rows($result_login)!=0)
                {
                    
    $member_password md5($member_password);
              
                    while(
    $row_login mysql_fetch_object($result_login)) 
                    { 
                        if(
    $row_login->member_nick == $user_s && $row_login->member_password ==$member_password)  
                        { 
                            
    session_register("user_s");
                            
    $meldung=""
                        } 
                        else 
                            
    $meldung="incorect pass";     
                    }
                }
                else
                {
                    
    $meldung="user not found";
                }
                
                
    db_close($db_handle);
            }
            return 
    $meldung;
        } 
    der index

    PHP-Code:
    if(!session_is_registered("user_s") && (isset($_POST['login']) || !empty($_POST['login'])))
        {
            
    $loginmeldung=login($_POST['user_s'], $_POST['password'], $tbl_member);
        }


    // weiterer code ...

    if(session_is_registered("user_s"))
                                {  
                                    echo 
    "Hallo" $_SESSION["user_s"] . ", wie gehts?";
                                }                            
                                else
                                {
                                    echo
    "
                                        <table border=0 cellspacing=0 cellpadding=0> 
                                               <tr> 
                                                <td background=images/single.gif width=12 rowspan=2 >&nbsp;</td>
                                                  <td>
    $loginmeldung</td> 
                                            </tr> 
                                        </table>
                                        <form name=form method=post action=index.php> 
                                            <table border=0 cellspacing=0 cellpadding=0> 
                                                <tr> 
                                                    <td background=images/single.gif width=12 rowspan=2 >&nbsp;</td>
                                                      <td><input class=username type=text name=user_s></td> 
                                                </tr> 
                                                <tr> 
                                                     <td><input class=password type=password name=password size=9><img src=images/images/single.gif width=1 height=1><input type=submit name=Submit value=login><input type=hidden name=login value=login></td> 
                                                 </tr>
                                                 </tr><td background=images/single.gif height=10></td></tr>
                                             </table> 
                                         </form>
                                        "
    ;
                                   } 
     

  4. #4
    Avatar von Karl Förster
    Karl Förster Karl Förster ist offline Mitglied Platin
    Registriert seit
    Feb 2001
    Ort
    München
    Beiträge
    646
    Was won_gak andeuten wollte:
    • session_register("variable"); sollte ab jetzt $_SESSION["variable"] = $variable
    • session_is_registered("variable"); sollte nun heißen: isset ($_SESSION["variable"]);

    Probier das mal auf diese Weise umzubauen.
     
    MfG

    Karl Förster
    Entwicklung / Development
    Appia, Inc.


    appia.com

  5. #5
    Avatar von won_gak
    won_gak won_gak ist offline Mitglied Brokat
    Registriert seit
    Dec 2002
    Ort
    Frankfurt/Main
    Beiträge
    470
    @Karl Förster: Danke. Genau das wollte ich andeuten

    und hier:

    http://de3.php.net/manual/de/ref.session.php

    Zitat PHP-Handbuch:
    Aus Gründen der Verbesserung der Sicherheit und der Lesbarkeit des Codes wird die Verwendung von $_SESSION (oder $HTTP_SESSION_VARS bei PHP 4.0.6 oder niedriger) empfohlen. Mit $_SESSION werden die Funktionen session_register(), session_unregister() und session_is_registered() nicht benötigt. Auf die Session-Variablen kann wie auf jede normale Variable zugegriffen werden.
    Geändert von won_gak (12.02.04 um 01:07 Uhr)
     
    ~WonGak~

    "And if there is a god, I know he likes to rock."

  6. #6
    Registriert seit
    Nov 2002
    Beiträge
    383
    danke euch jetzt funktionier es

    gruß kon
     

Ähnliche Themen

  1. LoginScript
    Von Geordi im Forum PHP
    Antworten: 9
    Letzter Beitrag: 20.08.04, 01:41
  2. Loginscript
    Von Geordi im Forum PHP
    Antworten: 2
    Letzter Beitrag: 17.08.04, 17:25
  3. Loginscript
    Von wentinator im Forum PHP
    Antworten: 1
    Letzter Beitrag: 11.08.04, 12:25
  4. Loginscript
    Von server im Forum Relationale Datenbanksysteme
    Antworten: 1
    Letzter Beitrag: 02.03.04, 12:41
  5. Loginscript
    Von mX|steven im Forum PHP
    Antworten: 9
    Letzter Beitrag: 01.02.02, 18:18