你需要使用 php。通常,我创建一个functions.php 文件来存储我的所有函数,然后将它包含在每个页面的开头。在我的函数文件中,我总是放一个函数来检查登录是否存在。这是逐字记录:
function checkLogin($data) {
global $con;
extract($data);
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = mysql_query($sql, $con) or exit('Eror selecting users database: '.mysql_error());
$num_rows = mysql_num_rows($result);
if ($num_rows==0) {
return false;
}
else {
return true;
}
}
$con
是我存储的一个全局变量,它创建 MySQL 连接。看起来像:
$con = mysql_connect($host, $user, $pass);
这样我只需要定义一次。然后在 front.php 上将表单提交给自身(front.php)并执行以下操作:
if (isset($_POST['submit']) && isset($_POST['loginForm'])) {
if (!checkLogin($_POST)) {
$valid = false;
}
else {
Header('Location: dashboard.php');
}
}
我将此代码放在一个名为 session.php 的文件中,并将其包含在每个页面的开头。所以在这种情况下,你的 front.php 文件的顶部看起来像:
<?php
include('session.php');include('functions.php');
我将它们分开的原因是因为您不需要检查函数所在的每个页面上的登录。在这个例子中,我将登录表单操作设置为loginForm
,如果成功,我会将它们重定向到dashboard.php . 您可能应该在 else 语句中添加一些内容,将他们的会话存储为 cookie,这样他们就不必在每次关闭选项卡或退出浏览器时都重新登录。