1

我有这段代码将检查用户名和密码是否与数据库中的用户名和密码匹配,并授予用户访问我的网站的权限。

<?php
$host="localhost"; // Host name 

$username=""; // Mysql username 

$password=""; // Mysql password 

$db_name="bfp6"; // Database name 

$tbl_name="station"; // Table name

// Connect to server and select database.

mysql_connect("localhost", "root", "")or die("cannot connect");


mysql_select_db("bfp6")or die("cannot select DB");

// username and password sent from form 

$mystations=$_POST['mystations']; 

$mypassword=$_POST['mypassword'];

// To protect MySQL injection

$mystations = stripslashes($mystations);

$mypassword = stripslashes($mypassword);

$mystations = mysql_real_escape_string($mystations);

$mypassword = mysql_real_escape_string($mypassword);

$sql="SELECT * FROM $tbl_name WHERE stations='$mystations' and password='$mypassword'";

$result=mysql_query($sql);

// Mysql_num_row is counting table row

$count=mysql_num_rows($result);

// If result matched $myusername and $mypassword, table row must be 1 row

if($count==1){

// Register $mystations, $mypassword and redirect to file "login_success.php"

session_register("mystations");

session_register("mypassword");


header("location:main.html");

}

else {

echo "Wrong Username or Password";

}

?>

但是我真的很难过,因为我不知道如何将登录我网站的用户的用户名插入到新数据库中。我想将该代码插入到这个数据库中。我有一个名为“log”的新表,其中包含“id”、“user”、“time”字段。我想要发生的是,每当一个人成功登录到我的网站时,他/她的用户名将被插入到表“日志”中。也许使用 $_POST 但我想确保访问权限被授予。我也已经有一个代码,将显示表的内容“日志:如果有的话。另一个问题是时间如何根据用户登录的时间自动插入数据库。伙计们,请帮帮我。我的论文截止日期是2月16日:(

4

2 回答 2

0

为用户名设置一个会话变量,然后在每个页面上,启动会话并回显该变量。如果变量不存在,请注销用户。

至于制作表格,我建议使用 SQL 客户端,例如 heidisql 或 navicat。

看起来很简单?

于 2013-02-01T15:17:57.120 回答
0

尝试这个:

if ($count == 1) {

    // logging the user

    mysql_query("INSERT INTO log (user, time) VALUES ('" . $mystations . "', now())");

    // setting the username as the name the user entered when logging in

    $_SESSION['username'] = $mystations;

    // Register $mystations, $mypassword and redirect to file "login_success.php"

    session_register("mystations");

    session_register("mypassword");

    header("location:main.html");

} else {

    echo "Wrong Username or Password";

}

此外,您需要session_start();在使用会话变量的任何页面的顶部。

于 2013-02-01T15:20:26.030 回答