-3

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

这是我的脚本:

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
                    }
                }
            ?>

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

http://i.stack.imgur.com/xDMGA.png

提前致谢!

4

1 回答 1

0

在您的查询中:

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

尝试删除引号date_last_inlog或将它们更改为反引号:

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

另外,不要使用mysql_*函数,使用mysqliorPDO代替。您的代码易受 SQL 注入攻击。

于 2013-07-17T18:45:52.443 回答