PHP登陆注册功能
PHP登陆注册功能
Hokori做一个最简单的登陆注册功能,看一下这个功能是怎么实现的:
从原理上来说,其实很简单,就是将用户输入的值进行储存,然后匹配,以此达到注册以及登陆的目的。
首先,做一个最简单的登陆注册页面:
<code lang="html">
<section>
<div id="button">
<button>login</button>
<button>register</button>
</div>
<div id="login">
<form action="login.php" method="post">
账户:<input type="text" name="uname" value=""/><br/>
密码:<input type="password" name="password" value=""><br/>
<input type="submit" value="登陆"/>
</form>
</div>
<div id="register" style="display: none;">
<form action="register.php" method="post">
账户:<input type="text" name="uname" value=""/><br/>
密码:<input type="password" name="password" value=""><br/>
确认密码:<input type="password" name="repassword" value=""><br/>
<input type="submit" value="注册"/>
</form>
</div>
<script type="text/javascript">
var buttons=document.getElementsByTagName('button');
var login=document.getElementById('login');
var register=document.getElementById('register');
buttons[0].onclick=function () {
login.style.display='block';
register.style.display='none';
};
buttons[1].onclick=function () {
register.style.display='block';
login.style.display='none';
}
</script>
</section>
</code>
然后做一个注册功能:
<code lang="php">
if(trim($_POST['password'])!=trim($_POST['repassword'])) {
exit('<script>alert("密码输入错误,请重新数密码");history.back(-1);</script>');
}
$username=trim($_POST['uname']);
$password=md5(trim($_POST['password']));
$mysql=mysqli_connect('localhost','root','');
if(mysqli_errno($mysql)){//如果有错误,存在错误号,则输出错误号。
echo mysqli_errno($mysql);
exit;
}
mysqli_select_db($mysql,'test');
mysqli_set_charset($mysql,'utf8');
//如果表不存在,则建立数据库表,以及字段
$create="CREATE TABLE IF NOT EXISTS user(
username varchar(100) NOT NULL ,
password varchar(100) NOT NULL
) ";
mysqli_query($mysql,$create);
//在数据库查询账户名字,看名字是否被注册
$select = "SELECT username FROM user where username='$username'";
$rows=mysqli_num_rows( mysqli_query($mysql,$select));
if($rows === 0){
$insert = "INSERT INTO user(username,password) VALUES('$username','$password')";
$query=mysqli_query($mysql,$insert);
}else{
mysqli_close($mysql);
exit('<script>alert("用户名已被注册");history.back(-1);</script>');
}
</code>
注册功能要注意的是密码的加密,当前我用的是最简单的md5加密方式。
最后就是登陆功能了:
<code lang="php">
$username=$_POST['uname'];
$password=md5($_POST['password']);
$mysql=mysqli_connect('localhost','root','','test');
$select="SELECT * FROM user WHERE username='$username'";
$result= mysqli_query($mysql,$select);
$rows=mysqli_num_rows($result);
if($rows===0){
exit("<script>alert('用户不存在');history.back(-1);");
}else{
$row=mysqli_fetch_array($result);
if($password===$row['password']){
print_r("<script>alert('登陆成功');</script>");
}else{
exit('登陆失败');
}
}
</code>
登陆功能其实就是输入值与数据库里的值进行匹配,如果匹配则登陆,否则不登陆。
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果