我无法弄清楚如何更新我的上次登录时间

时间:2013-07-17 17:52:40

标签: php mysql

我正在尝试为网站制作最后一个活动功能。但我无法让它发挥作用。我希望你们能在这里帮助我。

这是我的疑问:

$last_activity_query = "UPDATE users_table SET user_name  = '$user_name' WHERE 'date_last_inlog' = NOW()";

$result_update =  mysql_query($last_activity_query);

$last_activity_update = mysql_fetch_array($result_update);

这是我的数据库表的打印屏幕:

enter image description here

我想将此更新存储在最后一行。

提前致谢!

我现在改变了我的脚本,但它仍然没有改变我的数据库表中的任何内容。

这是改变:

if (isset($_REQUEST['inlog_submit'])){//checks if form is submitted


                    $user_name = $_REQUEST['username_input'];//request username from inlog_form
                    $password = $crypt;//gets enqrypted pass
                    //$tbl_name="user_table"; // Table name
                    $query = "SELECT * FROM users_table WHERE user_name= '$user_name' AND password='$password'";//query stored in var
                    $last_activity_query = "UPDATE users_table SET 'date_last_inlog' = NOW() WHERE user_name  = '$user_name'";
                    $result = mysql_query($query);//var with result of query
                    $result_update =  mysql_query($last_activity_query);

                    if ($user_name = mysql_fetch_array($result)){//checks inlog data from form with the $result query
                        $_SESSION['user_name'] = $user_name[user_name];//creates session with username
                        $_SESSION['password'] = $password[password];//creates session with password
                        $last_activity_update = mysql_fetch_array($result_update);
                        header ('Location: admin.php');//when login is correct redirect to specified page
                    }else{
                        $error_inlog = 10;//when inlog data is incorrect this error will show
                    }
                }
            ?>

2 个答案:

答案 0 :(得分:2)

您的SQL查询顺序错误。

$last_activity_query = "UPDATE users_table SET 'date_last_inlog' = NOW() WHERE user_name  = '$user_name'";

答案 1 :(得分:1)

你的逻辑错误。使用此: -

"UPDATE users_table SET 'date_last_inlog' = NOW() WHERE user_name  = '$user_name'";

您正在使用此: -

UPDATE users_table SET user_name  = '$user_name' WHERE 'date_last_inlog' = NOW()

您正在尝试更新user_name列,其中date_last_inlog列值等于逻辑上不正确的当前时间。