落花飞满地,素手握春泥。
思念天涯远,芳心暗着迷。
摘自简书@蛮力
Less Is More
落花飞满地,素手握春泥。
思念天涯远,芳心暗着迷。
摘自简书@蛮力
注册的部分前端代码
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<hr size="1">
<form action="add.php" method="post" >
用户:<input type="text" name="username"/><br>
密码:<input type="password" name="password" /><br>
确认密码:<input type="password" name="repassword" /><br>
<input type="submit" name="register" value="注册">
</form>34253654
注册文件add.php的代码:
<?php
header('Content-type:text/html;charset=utf-8');
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
if (empty($_POST['username'])){
echo "<script>alert('用户名不能为空!');location.href='login.html';</script>";
}else {
$username = trim($_POST['username']);
}
if (empty($_POST['password'])){
echo "<script>alert('密码不能为空!');location.href='login.html';</script>";
}else{
$password = $_POST['password'];
}
if (empty($_POST['repassword'])){
echo "<script>alert('确认密码不能为空!');location.href='login.html';</script>";
}else{
$repassword = $_POST['repassword'];
}
if ($password != $repassword) {
echo "<script>alert('两次输入密码不一致!');location.href='login.html';</script>";
}
}
$mysqli = new mysqli('localhost', 'root', 'root', 'student');
$result = $mysqli->query("SELECT password FROM user WHERE username = "."'$username'");
$rs=$result->fetch_row();
if(!empty($rs)){
echo "<script>alert('用户已存在!');location.href='login.html';</script>";
}else {
$mysqli = new mysqli('localhost', 'root', 'root', 'student');
$sql = "INSERT INTO user (username,password) VALUES ('$_POST[username]', '$_POST[password]')";
$rs = $mysqli->query($sql);
if (!$rs) {
echo "<script>alert('注册失败!');location.href='login.html';</script>";
} else {
echo "<script>alert('注册成功!返回登录页面');location.href='login.html';</script>";
}
}
用户登陆界面的代码:
<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”UTF-8″>
<title>Title</title>
</head>
<body>
<hr size=”1″>
<form action=”success.php” method=”post” >
用户:<input type=”text” name=”username”/><br>
密码:<input type=”password” name=”password” /><br>
<input type=”submit” name=’login’ value=”登录”>
</form>
用户登陆响应功能的代码:
<?php
header(‘Content-type:text/html;charset=utf-8’);
if ($_SERVER[‘REQUEST_METHOD’] == ‘POST’) {
if (empty($_POST[‘username’])){
echo “<script>alert(‘用户名不能为空!’);location.href=’login.html’;</script>”;
}else {
$username=trim($_POST[‘username’]);
}
if (empty($_POST[‘password’])){
echo “<script>alert(‘密码不能为空!’);location.href=’login.html’;</script>”;
}else{
$password=$_POST[‘password’];
}
}
$mysqli = new mysqli(‘localhost’, ‘root’, ‘root’, ‘student’);
$result = $mysqli->query(“SELECT password FROM user WHERE username = “.”‘$username'”);
$rs=$result->fetch_row();
if (!empty($rs)){
if ($password != $rs[0]) {
echo “<script>alert(‘密码错误!’);location.href=’login.html’;</script>”;
}else{
$expire=3600;
ini_set(‘session.gc_maxlifetime’, $expire);//保存1小时
if (empty($_COOKIE[‘PHPSESSID’])) {
session_set_cookie_params($expire);
session_start();
}else{
session_start();
setcookie(‘PHPSESSID’, session_id(), time() + $expire);
}
if(isset($_SESSION[‘username’])){
exit(“您已经登入了,请不要重新登入!用户名:{$_SESSION[‘username’]}—<a href=’logout.php’>注销</a>”);
}else{
$_SESSION[‘username’]=$_POST[‘username’];
}
echo “<script>alert(‘登录成功!’);</script><br>”;
echo “您好!{$_SESSION[‘username’]},欢迎回来!”;
echo “<a href=’logout.php’>注销</a>”;
}
}else{
echo “<script>alert(‘没有此用户!’);location.href=’login.html’;</script>”;
}
注销登陆的业务逻辑:
<?php
header(‘Content-type:text/html;charset=utf-8’);
session_start();
if(isset($_SESSION[‘username’])){
// var_dump(session_name());die();
session_unset($_SESSION[‘username’]);
session_destroy();//销毁一个会话中的全部数据
setcookie(session_name(),”);//销毁与客户端的联系
echo “<script>alert(‘注销成功!’);location.href=’login.html’;</script>”;
}else{
echo “<script>alert(‘注销失败!’);</script>”;
}
mysql中的会员表:
CREATE TABLE `user` (
`id` int(4) NOT NULL auto_increment,
`username` varchar(33) NOT NULL,
`password` varchar(33) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
用户注册的ajax代码实现:
<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”UTF-8″>
<title>Title</title>
</head>
<body>
<hr size=”1″>
用户:<input type=”text” id =”username” name=”username”/><br>
密码:<input type=”password” id=”password” name=”password” /><br>
确认密码:<input type=”password” id=”repassword” name=”repassword” /><br>
<!–用于提示表单验证信息–>
<div id=”error_message” style=”color: red”></div>
<input type=”submit” id=”register” name=”register” value=”注册”>
</body>
<script type=”text/javascript”>
document.getElementById(“register”).onclick = function () {
var name = document.getElementById(“username”).value;
var pwd = document.getElementById(“password”).value;
var repwd = document.getElementById(“repassword”).value;
var oError = document.getElementById(“error_message”);
var isNotError = true;
if(name==””){
oError.innerHTML = “警告:用户名为空 “;
isNotError = false;
return;
}else if(pwd==””){
oError.innerHTML = “警告:密码为空 “;
isNotError = false;
return;
}else if(repwd==””){
oError.innerHTML = “警告:确认密码为空 “;
isNotError = false;
return;
} else if(pwd!=repwd){
oError.innerHTML = “警告:两次密码不一致 “;
isNotError = false;
return;
}
//创建XHR对象
var xhr = new XMLHttpRequest();
//设置请求URL
var url = “./add.php?username=” + name+”&password=”+pwd;
//设置XHR对象readyState变化时响应函数
xhr.onreadystatechange = function () {
//readyState是请求的状态,为4表示请求结束
if (xhr.readyState == 4) {
//responseText服务器响应的内容
var data = eval(this.responseText);//json转对象格式
for(var index in data) {
if(data[index].code==1){
alert(data[index].message);//用户已存在
}else if(data[index].code==2){
alert(data[index].message);//注册失败
}
else if(data[index].code==3){
alert(data[index].message);//注册成功
location.href=’login.html’;
}
}
}
};
//打开链接
xhr.open(“get”, url, true);
//发送请求
xhr.send();
}
</script>
</html>
用户登陆的ajax实现:
<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”UTF-8″>
<title>Title</title>
</head>
<body>
<hr size=”1″>
用户:<input type=”text” id=”username” name=”username”/><br>
密码:<input type=”password” id=”password” name=”password” /><br>
<div id=”error_message” style=”color: red”></div>
<input type=”submit” id=’login’ name=’login’ value=”登录”>
<div id=”success”></div>
</body>
<script type=”text/javascript”>
document.getElementById(“login”).onclick = function () {
var name = document.getElementById(“username”).value;
var pwd = document.getElementById(“password”).value;
var oError = document.getElementById(“error_message”);
var isNotError = true;
if(name==””){
oError.innerHTML = “警告:用户名为空 “;
isNotError = false;
return;
}else if(pwd==””){
oError.innerHTML = “警告:密码为空 “;
isNotError = false;
return;
}
//创建XHR对象
var xhr = new XMLHttpRequest();
//设置请求URL
var url = “./success.php?username=” + name+”&password=”+pwd;
//设置XHR对象readyState变化时响应函数
xhr.onreadystatechange = function () {
var success = document.getElementById(“success”);
//readyState是请求的状态,为4表示请求结束
if (xhr.readyState == 4) {
//responseText服务器响应的内容
var data = eval(this.responseText);
for(var index in data) {
if(data[index].code==1){
alert(data[index].message);//密码错误
}else if(data[index].code==2){
alert(data[index].message);//您已经登入了
success.innerHTML = “用户名:”+data[index].session+”—“+”<a href=’logout.php’>注销</a>”;;
}else if(data[index].code==3){
alert(data[index].message);//登录成功
success.innerHTML = “您好!”+data[index].session+”,欢迎回来!<a href=’logout.php’>注销</a>”;
}
else if(data[index].code==4){
alert(data[index].message);//没有此用户,请重新登录
location.href=’login.html’;
}
}
}
};
//打开链接
xhr.open(“get”, url, true);
//发送请求
xhr.send();
}
</script>
</html>
数据库验证部分代码:
<!DOCTYPE html>
<html lang=”en”>
<head>
<meta charset=”UTF-8″>
<title>Title</title>
</head>
<body>
<hr size=”1″>
用户:<input type=”text” id =”username” name=”username”/><br>
密码:<input type=”password” id=”password” name=”password” /><br>
确认密码:<input type=”password” id=”repassword” name=”repassword” /><br>
<!–用于提示表单验证信息–>
<div id=”error_message” style=”color: red”></div>
<input type=”submit” id=”register” name=”register” value=”注册”>
</body>
<script type=”text/javascript”>
document.getElementById(“register”).onclick = function () {
var name = document.getElementById(“username”).value;
var pwd = document.getElementById(“password”).value;
var repwd = document.getElementById(“repassword”).value;
var oError = document.getElementById(“error_message”);
var isNotError = true;
if(name==””){
oError.innerHTML = “警告:用户名为空 “;
isNotError = false;
return;
}else if(pwd==””){
oError.innerHTML = “警告:密码为空 “;
isNotError = false;
return;
}else if(repwd==””){
oError.innerHTML = “警告:确认密码为空 “;
isNotError = false;
return;
} else if(pwd!=repwd){
oError.innerHTML = “警告:两次密码不一致 “;
isNotError = false;
return;
}
//创建XHR对象
var xhr = new XMLHttpRequest();
//设置请求URL
var url = “./add.php?username=” + name+”&password=”+pwd;
//设置XHR对象readyState变化时响应函数
xhr.onreadystatechange = function () {
//readyState是请求的状态,为4表示请求结束
if (xhr.readyState == 4) {
//responseText服务器响应的内容
var data = eval(this.responseText);//json转对象格式
for(var index in data) {
if(data[index].code==1){
alert(data[index].message);//用户已存在
}else if(data[index].code==2){
alert(data[index].message);//注册失败
}
else if(data[index].code==3){
alert(data[index].message);//注册成功
location.href=’login.html’;
}
}
}
};
//打开链接
xhr.open(“get”, url, true);
//发送请求
xhr.send();
}
</script>
</html>
从注册yueshaoliang.com这个域名也快一年了,第一年在godaddy买了个虚拟主机挂着,总共发的文章不过十余篇,还不乏各种烂尾。
想着总还是要写点东西,无论是作为代码的备忘、心得和偶尔想法的记录、抑或是给自己一个可以折腾的地儿。
在今天(2018-03-10),域名还在走备案流程,但是已经迫不及待的写下第一篇日志(旧版总共10多篇文章,且价值不高,不再备份过来,当作重新开始吧)。
算是立一个Flag吧,2018开始,用心学好自己想学的,希望以后的路能好走一点。
第一个阶段,不打算折腾主题了,默认的其实也挺好。
相对于博客来说,内容才是最重要的,不是么?
Less Is More…….
欢迎使用WordPress。这是您的第一篇文章。编辑或删除它,然后开始写作吧!