Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 17

Thema: Login übergibt die Session ID nicht

  1. #1
    Interessierte/r Avatar von XantypiaxD
    Registriert seit
    17.01.2010
    Beiträge
    123
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard Login übergibt die Session ID nicht

    Hey.. langsam bin ich echt am verzweifeln..

    Ich habe eine Site auf der man sich registrieren kann.

    Mit dem registrierten Account kann man sich dann im Loginbereich anmelden..

    Funktioniert auch..

    Aber wenn ich mir die DB anschaue... ist die SessionID immer leer.. und wenn ich dann wieder ausloggen steht wieder NULL darin..

    hier mein CODE:

    Loginformular:

    PHP-Code:
    <?php
        error_reporting
    (6143); // ^= E_ALL
        
        
    include 'include/config.php';
        include 
    'include/sessionhelpers.inc.php';
        
        if (isset(
    $_POST['login'])){
        
    $ID check_user($_POST['Name'], $_POST['Password']);
        if (
    $ID!=false)
            
    login($ID);
        else
            echo 
    '<p>Deine Anmeldedaten waren nicht korrekt! Versuche es erneut.</p>';
        }
                    
        if(!
    user_online()){
        echo
    '
        <form name="login_window" method="post" action="index.php?site=login&action=main">
        Login
          <table border="0">
        <tr>
          <td>&nbsp;ID:</td>
          <td><input type="text" name="Name"></td>
        </tr>
        <tr>
          <td>&nbsp;PW:</td>
          <td><input type="password" name="Password"></td>
        </tr>
        <tr>
          <td></td>
          <td><input type="submit" name="login" value="Login">&nbsp;<input type="reset" name="reset" value="Reset"></td>
        </tr>
        <tr>
          <td></td>
          <td><a href="index.php?site=reg">Registrieren</a></td>
        </tr>
      </table>
        </form>
        '
    ;
        }
        else{
        if(isset(
    $_GET['action'])){
        
        if(
    $_GET['action']=='main'){
        
    $sql_readout "SELECT
                        ID,
                        Name                    
                        FROM
                        user
                        WHERE UserSession='"
    .session_id()."'
                        LIMIT 1;"
    ;
        
    $result mysql_query($sql_readout) OR die(mysql_error());
        
    $row mysql_fetch_assoc($result);
        
    $mypersonalid $row['ID'];
        
    $mypersonalname $row['Name'];
        
        echo 
    '<p>Hey, '.$mypersonalname.' ! - <a href="index.php?action=logout">Logout</a></p>
        
         <table align="center" border="0">
         
          <tr>
            <td>Willkommen in deinem pers&ouml;nlichen Bereich.</td>
          </tr>
          <tr>
            <td><a href="index.php?action=main&site=pwnew">Passwort &auml;ndern</a></td>
          </tr>
          <tr>
            <td><a href="index.php?action=main&site=upload">Design uploaden</a></td>
          </tr>
         
         </table>
      
      '
    ;
        }
        
        if(
    $_GET['action']=='logout'){
        
    logout();
        echo 
    "<meta http-equiv='refresh' content='0;URL=index.php?action=main'>";
        }
        
        }
        }
    ?>
    Hier die Sessionhelpers.inc.php

    PHP-Code:
    <?php
    //sessionhelpers.inc.php
    function connect()
    {
        
    $con mysql_connect(MYSQL_HOSTMYSQL_USERMYSQL_PASS) or die(mysql_error());
        
    mysql_select_db(MYSQL_DATABASE$con) or die(mysql_error());
    }

    function 
    check_user($name$pass)
    {
        
    $sql="SELECT ID
        FROM hauswurzerkeutz.user
        WHERE Name='"
    .$name."' AND Password = MD5('".$pass."')
        LIMIT 1"
    ;
        
    $result mysql_query($sql) or die(mysql_error());
        if (
    mysql_num_rows($result)==1)
        {
            
    $user mysql_fetch_assoc($result);
            return 
    $user['ID'];
        }
        else
            return 
    false;
    }

    function 
    login($ID)
    {
        
    $sql="UPDATE hauswurzerkeutz.user
        SET UserSession='"
    .session_id()."'
        WHERE ID="
    .$ID;
         
    mysql_query($sql);
    }

    function 
    user_online()
    {
        
    $sql "SELECT ID
        FROM hauswurzerkeutz.user
        WHERE UserSession='"
    .session_id()."'
        LIMIT 1"
    ;
        
    $result mysql_query($sql);
          return (
    mysql_num_rows($result)==1);
    }

    function 
    logout()
    {
        
    $sql="UPDATE hauswurzerkeutz.user
        SET UserSession=NULL
        WHERE UserSession='"
    .session_id()."'";
         
    mysql_query($sql);
    }

    connect();
    ?>
    in der config.php befinden sich nur die Daten zur DB..

    Kann mir bitte jmd. helfen? komme echt nicht weiter
    Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
    Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!

  2. #2
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Login übergibt die Session ID nicht

    Also, ich denke $_COOKIE["PHPSESSID"] wird enthalten,w as du suchst und noch was:
    PHP-Code:
    MD5('".$pass."'
    Die Funktion ist zwar gut und schön, jedoch kann man dadurch ein PW entschlüsseln, für standard MD5 hashs gibts Rainbow Tables. Ich würde daher das ganze mit PHP und einem $salt machen
    PHP-Code:
    "WHERE password = '".md5($pass$salt)."'" 
    und wenn du 100%ig sicher sein willst, das dein Passwort so schnell nich geknakt wird, kannst du es auch VOR dem versenden durch den Browser mit JS verschlüsseln und dann auf dem Server via PHP nochmals nen MD5 drauf anwenden, nen doppelhash also. Das musste aber beim registrieren auch beachten.
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  3. #3
    Interessierte/r
    Themenstarter
    Avatar von XantypiaxD
    Registriert seit
    17.01.2010
    Beiträge
    123
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Login übergibt die Session ID nicht

    könntest du mir bitte den konkreten Befehl angeben..

    bzw. wo er hin kommt?

    Danke

  4. #4
    der/die Göttliche Avatar von jojo87
    Registriert seit
    23.03.2007
    Ort
    Leipzig
    Alter
    30
    Beiträge
    3.131
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Login übergibt die Session ID nicht

    überprüfe deine Querys mit
    PHP-Code:
    myslq_query($sql) or die(mysql_error()); 
    Vermutlich liegt da der Hase begraben.
    Ansonsten kannst du auch einfach konsequent sein und
    http://php.net/session_set_save_handler
    nutzen

  5. #5
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Login übergibt die Session ID nicht

    PHP-Code:
    function check_user($name$pass

        
    $pass=md5($pass); /// ÄNDERUNG
        
    $sql="SELECT ID 
        FROM hauswurzerkeutz.user 
        WHERE Name='"
    .$name."' AND Password = '".$pass."' 
        LIMIT 1"

        
    $result mysql_query($sql) or die(mysql_error()); 
        if (
    mysql_num_rows($result)==1
        { 
            
    $user mysql_fetch_assoc($result); 
            return 
    $user['ID']; 
        } 
        else 
            return 
    false

    In diesem fall müsstes du z.B. in jede PHP-Datei mit datenbankverbindung sowas includen
    PHP-Code:
    $db=null;
    $host="localhost";
    $user="root";
    $pw="";
    $base="";
    $salt="iqpiduöajfösfioeqw";
    function 
    connect() {
        
    $db=new mysqli($host$user$pw$base);
    }
    function 
    disconnect() {
        if (
    $db!=null$db->close();
        
    $db=null;

    Dann hättest u immer ne DB-Connection bereit und das Salt überall verfügbar.
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  6. #6
    Interessierte/r
    Themenstarter
    Avatar von XantypiaxD
    Registriert seit
    17.01.2010
    Beiträge
    123
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Login übergibt die Session ID nicht

    Funktioniert immer noch nicht richtig..



    Könnte mir jemand von euch vllt ein Link zu nem Script geben,

    wo ich ein Loginbereich, angefangen von der DB Verbindung bis zum Logout, finde ?


    Danke

  7. #7
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Login übergibt die Session ID nicht

    Dashier hab ich mal geschreiben, war mein erstes Tut, soll auch ein Tutorial sein, kein fertiges Script. Einfach lesen, nachvollziehen und dann versuchen, es selbst zu schreiben. Wenn des klappt, müsste login/logout kein Prob. für dich sein.
    http://www.supernature-forum.de/tuto...rungsmail.html

    P.S.: Ja, in dem Tut hab ich die Sicherheit aussen vor gelassen, sollte übersichtlich werden. Wie du das aber dann einbaust, weisste ja jetzt
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  8. #8
    der/die Göttliche Avatar von jojo87
    Registriert seit
    23.03.2007
    Ort
    Leipzig
    Alter
    30
    Beiträge
    3.131
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Login übergibt die Session ID nicht

    jetzt wirf doch nicht gleich das Handtuch!
    Dein script ist doch an sich ganz in Ordnung,
    und Debuggen gehört zum Programmieren dazu.
    Ich häng manchmal Tage an eigentlich winzigen Problemen, so ists halt.
    Fang einfach an, isoliere die Stelle, die nicht funktioniert (das hast du ja schon).
    Jetzt lässt du dir über var_dump oder ähnliches die Variablen ausgeben und schaust, ob die stimmen, zusaätzlich noch die Query-fehler abfangen, wie von mir oben beschrieben, dann kommst du dem Fehler schnell auf die Schliche.

    @Tobse: Deine Hilfsbereitschaft in allen Ehren, aber du redest am Problem vorbei! Salting hat nichts mit seinem Fehler zu tun, und dann auf dein Tutorial zu verwiesen, wo am Ende nichts anderes rauskommt, als er schon hat, ist auch nicht sonderlich hilfreich.

  9. #9
    Kaiser(in)
    Registriert seit
    29.03.2009
    Ort
    1011 1111 1011 WorldWideWeb
    Beiträge
    2.439
    Danke
    2
    Bekam 6 mal "Danke" in 6 Postings

    Standard AW: Login übergibt die Session ID nicht

    Er wollte ja ein tut xD, Also is mir das eingefallen ;P
    Wie ich vom Salting angefangen hab, dachte ich, die eigentliche Funktion des Logins hätte sich jetzt erledigt ud wprde funktionieren.
    und sorry für des OT zeug.
    Der, der weiß dass er nichts weiß, weiß mehr als der, der nicht weiß, dass er nichts weiß.
    Wer nach etwas fragt, geht grundsätzlich das Risiko ein, es auch zu bekommen!

  10. #10
    Interessierte/r
    Themenstarter
    Avatar von XantypiaxD
    Registriert seit
    17.01.2010
    Beiträge
    123
    Danke
    0
    Bekam 0 mal "Danke" in 0 Postings

    Standard AW: Login übergibt die Session ID nicht

    Trotzdem Danke an Tobse =)

    Also.. ich denke dass es daran liegt, dass ich keine SessionID definiert habe?!

Ähnliche Themen

  1. PHP Login mit Session ID.
    Von koki12 im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 29.06.2007, 20:30
  2. Internet Explorer übergibt Daten nicht
    Von MM1986 im Forum HTML & CSS Forum
    Antworten: 3
    Letzter Beitrag: 19.05.2006, 19:02
  3. login - session problem
    Von cookie im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 1
    Letzter Beitrag: 29.12.2005, 14:07
  4. PHP: Session Login System
    Von Beatz im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 10
    Letzter Beitrag: 06.10.2005, 10:34
  5. PHP-Script übergibt Daten nicht in MYSQL-Datenbank
    Von snakey im Forum PHP Forum - Apache - CGI - Perl - JavaScript und Co.
    Antworten: 4
    Letzter Beitrag: 17.08.2004, 19:05

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •