用PHP创建登录页面
我正试图创建一些PHP代码与登录表单的网站,如果用户将尝试登录用户名和密码,页面将显示“欢迎…”。当用户试图输入用户名和密码时,显示的网站是空白的,上面什么都没有。另外,我已经用用户名和密码创建了mysql数据库 此登录表单位于我的主页index.html上:用PHP创建登录页面,php,html,mysql,Php,Html,Mysql,我正试图创建一些PHP代码与登录表单的网站,如果用户将尝试登录用户名和密码,页面将显示“欢迎…”。当用户试图输入用户名和密码时,显示的网站是空白的,上面什么都没有。另外,我已经用用户名和密码创建了mysql数据库 此登录表单位于我的主页index.html上: <form id="form" method="post" action="login.php"> <label for="username">Username:</label> <
<form id="form" method="post" action="login.php">
<label for="username">Username:</label>
<input type="text" name="username" size="15" required="required" />
<label for="password">Password:</label>
<input type="password" name="password" size="15" required="required" />
<input id="loginButton" type="submit" name="submit" value="LOGIN" />
</form>
用户名:
密码:
这是我的php页面login.php:
<?php
session_start();
$host = "localhost";
$username = "*******";
$password = "*******";
$db_name = "********";
$tbl_name = "users";
$conn = mysql_connect("$host", "$username", "$password") or die("Cannot connect");
mysql_select_db("$db_name", $conn) or die("Cannot connect");
$myusername = $_POST['username'];
$mypassword = $_POST['password'];
$myusername = stripslashes($myusername);
$mypassword = stripslashes($mypassword);
$myusername = mysql_real_escape_string($myusername);
$mypassword = mysql_real_escape_string($mypassword);
$sql = "SELECT * FROM $tbl_name WHERE username='$myusername' and password='$mypassword'";
$result = mysql_query($sql);
$count = mysql_num_rows($result);
if ($count == 1) {
session_register("username");
session_register("password");
header("location:page1.html");
} else {
echo "Wrong Username or Password";
}
?>
首先……不要在会话中存储密码。那只是自找麻烦
session_register("password");
第二……session_register()是一个不推荐使用的函数,不应该再使用了
相反,你应该
$_SESSION['username'] = $myusername;
第三
header("location:page1.html");
如果希望会话跨页面工作,则应为PHP文件
header("location:page1.php");
然后在PHP页面中执行
session_start();
if(!isset($_SESSION['username'])){
header("location:index.php");
} else {
// Display stuff to logged in user
}
你的问题是什么?贬值了。请设置一个会话,如$\u session[KEY]=VALUE
。您不能在.html
页面上运行PHP
。您需要将该扩展名更改为.php
。您的代码包含许多缺陷、印刷错误和逻辑错误。我建议找一本更好的教程,完整地阅读。将代码复制和粘贴在一起不会有太大进展。在尝试编写登录脚本之前,您需要对语法有一个基本的了解。不要再使用mysql.*
函数,因为它们已被弃用。改用PDO
或mysqli.*
。
session_start();
if(!isset($_SESSION['username'])){
header("location:index.php");
} else {
// Display stuff to logged in user
}