PHP-最后一个“;日期“;从此登录";IP地址;?

PHP-最后一个“;日期“;从此登录";IP地址;?,php,cookies,Php,Cookies,我想知道当用户登录时,php是否可以远程存储,比如日期和IP地址,或者使用“COOKIES”或数据库,我不知道,也不确定。顺便说一句,我的问题是,如果我上次登录是“2014年4月5日,从108.25.1.123开始” 它会发出回声 上次登录:2014年4月5日,从108.25.1.123开始 如果我错了,请忽略数据库和cookies。您可以在网站中的所有文件中包含foot.php文件。该foot.php将有如下代码: <?php $ip_address = $_SERVER['

我想知道当用户登录时,php是否可以远程存储,比如日期和IP地址,或者使用“COOKIES”或数据库,我不知道,也不确定。顺便说一句,我的问题是,如果我上次登录是“2014年4月5日,从108.25.1.123开始”

它会发出回声

  • 上次登录:2014年4月5日,从108.25.1.123开始

如果我错了,请忽略数据库和cookies。

您可以在网站中的所有文件中包含foot.php文件。该foot.php将有如下代码:

<?php
    $ip_address = $_SERVER['REMOTE_ADDR'];
    $last_login = date("Y-m-d H:i:s");

    $connection = mysql_connect($server, $username, $password);
    mysql_select_db($db, $connection);
    $query = sprintf('UPDATE table_users SET ip_address=%s, last_login=%s WHERE user_id=%s', $ip_address, $last_login, $_SESSION['user_id']);
?>

这将确保每当用户访问您网站中的页面时,数据库将自动更新。希望这有帮助。:)

编辑:PDO版本:

<?php
    $ip_address = $_SERVER['REMOTE_ADDR'];
    $last_login = date("Y-m-d H:i:s");
    $connection = new PDO('mysql:host=localhost;dbname=testdb', $username, $password);
    $query = sprintf('UPDATE table_users SET ip_address=%s, last_login=%s WHERE user_id=%s', $ip_address, $last_login, $_SESSION['user_id']);
    $count = $connection->exec($query);
    printf('Updated $count rows.');
?>

数据库方法 例如,在用户成功登录后,我猜您会重定向用户

login.hp

if(){
 //validations
 }
 else{
   update_last_sign_in();//call function which updates the last login
  //success redirect the user
  }
如果需要,可以在其他文件或同一页面上使用此函数

 function update_last_sign_in()
 {
 $username = $_SESSION['logged_in_user'];
 $ip = $_SERVER['REMOTE_ADDR'];
 $date =   date('Y-m-d H:i:s');

 $database = new mysqli('localhost', 'user', 'pass', 'database_name');
 $stmt = $database->prepare('UPDATE last_login set username = ?, user_ip = ?, login_date = ?');
 $stmt->bind_param('sss', $username, $ip, $date);
 $stmt->execute();
 }

感谢您花时间提供帮助,工作非常顺利。@Martintoobeast没问题,祝您的项目好运。:)