ip bei login speichern

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • ip bei login speichern

    hallo.

    habe mich mal selbst versucht. weiß nicht ob ich den usernamen mit
    $_POST['user'] holen kann. zudem bin ich mir auch nicht sicher wo ich es genau einfügen muß.

    möchte folgendes umsetzen.

    bei jedem userlogin soll in einer datenbank der username und dessen ip gespeichert werden.

    die dazugehörige tabelle:

    create table logg(
    id int(10) not null auto_increment primary key,
    datum date,
    uhrzeit varchar(10),
    user varchar(250),
    ip varchar(20));

    der code der eigentlich alles speichern soll:

    PHP Code:
    <?php

     $date 
    date("Y-m-d");
            
    $ip $_SERVER['REMOTE_ADDR'];
            
    $uhr date("H:i:s");
            
    $user=$_POST['user']

    $sql2 "insert into logg (id,datum,user,ip,uhrzeit) 
             values 
             ('','"
    .$date."','".$user."','".$ip"','".$uhr."')"
           
    $res mysql_db_query($database$sql2); 



    ?>
    und die seite in die dieser hinein soll:
    PHP Code:
    <?php
    if($login){
    require(
    'config/config.php');
    $db mysql_connect($dbhost$dbuser$dbpass) or die(mysql_error());
    mysql_select_db($dbname,$db) or die(mysql_error());
    $daten=mysql_query("select * from mt_user where user='$user'");
    if(
    mysql_num_rows($daten)>0){
    $uname=mysql_result($daten,0,"user");
    $free=mysql_result($daten,0,"free");
    $sperre=mysql_result($daten,0,"sperre");
    $upass=mysql_result($daten,0,"pwd");
    $sponsor=mysql_result($daten,0,"sponsor");
    }
    if(
    $user==""){
    $update="<center>Bitte einen Benutzername eingeben.</center>";
    }else{
    if(
    $pwd==""){
    $update="<center>Bitte ein Passwort eingeben.</center>";
    }else{
    if(
    $user!="$uname"){
    $update="<center>Benutzername wurde nicht gefunden.</center>";
    }else{
    if(
    $pwd!="$upass"){
    $update="<center>Passwort falsch.</center>";
    }else{
    if(
    $sperre==1){
    if(
    $free==1){
    if(
    $upass==$pwd){
    $ltime=time();
    mt_srand((double)microtime()*1000000);
    $randval mt_rand();
    $sessionid=md5($randval);
    $expire time() + 60*15;
    mysql_query("update mt_user set session='$sessionid',expire='$expire' where user='$user'");
    $lastaction time();
    mysql_query("UPDATE mt_user SET lastaction = '$lastaction' WHERE user = '$user'");
    if(
    $sponsor==0){
    header ("Location: ./members/loginbereich.php?sessionid=$sessionid");
    die;
    }else{
    header ("Location: ./sponsoren/loginbereich.php?sessionid=$sessionid");
    die;
    }
    }else{
    $update="Falscher Benutzername oder Passwort.";
    }}else{
    $update="Account ist noch nicht Freigeschaltet.";
    }}else{
    $update="Account wurde vom Admin gesperrt.";
    }}}}}}
    ?>
    Lg anna

  • #2
    willkommen. und gleich (bewusst) den code richtig eingefügt.

    zudem bin ich mir auch nicht sicher wo ich es genau einfügen muß.
    tja das solltest du da machen, wo sich dein user erfolgreich angemeldet hat. so eine möglichkeit sollte es in deinem script doch geben.
    PHP Code:
    if($upass==$pwd){ 
    das könnte doch eine ganz gute stelle sein?!? ich habe deinen quelltext nur überflogen.
    ich geh zum lachen in den keller

    Comment


    • #3
      Du hast 2 Querys in deinem Quellcode.. Warum nicht direkt da drunter einen dritten?

      PHP Code:
      mysql_query($sql2) or die(mysql_error()); 
      gruss Chris

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

      Comment


      • #4
        danke für die nette begrüßung

        habe deine antwort mal so verstanden:
        PHP Code:
        if($upass==$pwd){ 
        include(
         
        $date date("Y-m-d");
                
        $ip $_SERVER['REMOTE_ADDR'];
                
        $uhr date("H:i:s");
                
        $user=$_POST['user']
        $sql2 "insert into logg (id,datum,user,ip,uhrzeit) 
                 values 
                 ('','"
        .$date."','".$user."','".$ip"','".$uhr."')"
               
        $res mysql_db_query($database$sql2); 
        aber bei dieser ausführung wird der loginbereich nicht geladen.

        also hab ich es wohl nicht richtig gemacht.
        bin leider noch anfänger in php dingen. habe heut noch mal einiges gelesen, aber nix as mich auf eine lösung gebracht hätte.

        alos hab bitte nachsicht mit mir





        Original geschrieben von KamiKatze
        willkommen. und gleich (bewusst) den code richtig eingefügt.

        tja das solltest du da machen, wo sich dein user erfolgreich angemeldet hat. so eine möglichkeit sollte es in deinem script doch geben.
        PHP Code:
        if($upass==$pwd){ 
        das könnte doch eine ganz gute stelle sein?!? ich habe deinen quelltext nur überflogen.

        Comment


        • #5
          PHP Code:
          mysql_query("update mt_user set session='$sessionid',expire='$expire' where user='$user'");
          $lastaction time();
          mysql_query("UPDATE mt_user SET lastaction = '$lastaction' WHERE user = '$user'");
          mysql_query($sql2); 
          gruss Chris

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

          Comment


          • #6
            du bist ein schatz !!

            habs ohne include gemacht und dein mysql_query genommen und es funktioniert.
            Daaaaaaanke!!


            Original geschrieben von hhcm
            PHP Code:
            mysql_query("update mt_user set session='$sessionid',expire='$expire' where user='$user'");
            $lastaction time();
            mysql_query("UPDATE mt_user SET lastaction = '$lastaction' WHERE user = '$user'");
            mysql_query($sql2); 

            Comment


            • #7
              problem wurde gelöst!

              vielen dank!!

              Comment

              Working...
              X