我有这段代码,用于检查用户名和密码是否与数据库内的用户名和密码相匹配,并授予用户访问我网站的权限。
<?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”。我想要发生的是,每当一个人成功登录我的网站时,他/她的用户名将被插入到“log”表中。也许使用$ _POST但我想确保授予访问权限。我还有一个代码,它将显示“log:如果有的话”表的内容。另一个问题是时间如何根据用户登录的时间自动插入数据库。 伙计们,请帮帮我。我的论文截止日期是2月16日:(
答案 0 :(得分:0)
为用户名设置会话变量,然后在每个页面上启动会话并回显变量。如果该变量不存在,请将用户注销。
至于制作表格,我建议使用像heidisql或navicat这样的SQL客户端。
看起来够简单吗?
答案 1 :(得分: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();
。