login.html

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
  6. <title>用户登录</title>
  7. <style type="text/css">
  8. html{font-size:12px;}
  9. fieldset{width:520px; margin: 0 auto;}
  10. legend{font-weight:bold; font-size:14px;}
  11. label{float:left; width:70px; margin-left:10px;}
  12. .left{margin-left:80px;}
  13. .input{width:150px;}
  14. span{color: #666666;}
  15. </style>
  16. <script language=JavaScript>
  17. <!--
  18. function InputCheck(LoginForm)
  19. {
  20. if (LoginForm.username.value == "")
  21. {
  22. alert("请输入用户名!");
  23. LoginForm.username.focus();
  24. return (false);
  25. }
  26. if (LoginForm.password.value == "")
  27. {
  28. alert("请输入密码!");
  29. LoginForm.password.focus();
  30. return (false);
  31. }
  32. }
  33. //-->
  34. </script>
  35. </head>
  36. <body>
  37. <div>
  38. <fieldset>
  39. <legend>用户登录</legend>
  40. <form name="LoginForm" method="post" action="login.php" onSubmit="return InputCheck(this)">
  41. <p>
  42. <label for="username" class="label">用户名:</label>
  43. <input id="username" name="username" type="text" class="input" />
  44. <p/>
  45. <p>
  46. <label for="password" class="label">密 码:</label>
  47. <input id="password" name="password" type="password" class="input" />
  48. <p/>
  49. <p>
  50. <input type="submit" name="submit" value=" 确 定 " class="left" />
  51. </p>
  52. </form>
  53. </fieldset>
  54. </div>
  55. </body>
  56. </html>

conn.php

  1. <?php
  2. /*****************************
  3. *数据库连接
  4. *****************************/
  5. $conn = @mysql_connect("localhost","root","root123");
  6. if (!$conn){
  7. die("连接数据库失败:" . mysql_error());
  8. }
  9. mysql_select_db("test", $conn);
  10. //字符转换,读库
  11. mysql_query("set character set 'gbk'");
  12. //写库
  13. mysql_query("set names 'gbk'");
  14. ?>

reg.php

  1. <?php
  2. if(!isset($_POST['submit'])){
  3. exit('非法访问!');
  4. }
  5. $username = $_POST['username'];
  6. $password = $_POST['password'];
  7. $email = $_POST['email'];
  8. //注册信息判断
  9. if(!preg_match('/^[\w\x80-\xff]{3,15}$/', $username)){
  10. exit('错误:用户名不符合规定。<a href="javascript:history.back(-1);">返回</a>');
  11. }
  12. if(strlen($password) < 6){
  13. exit('错误:密码长度不符合规定。<a href="javascript:history.back(-1);">返回</a>');
  14. }
  15. if(!preg_match('/^w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*$/', $email)){
  16. exit('错误:电子邮箱格式错误。<a href="javascript:history.back(-1);">返回</a>');
  17. }
  18. //包含数据库连接文件
  19. include('conn.php');
  20. //检测用户名是否已经存在
  21. $check_query = mysql_query("select uid from user where username='$username' limit 1");
  22. if(mysql_fetch_array($check_query)){
  23. echo '错误:用户名 ',$username,' 已存在。<a href="javascript:history.back(-1);">返回</a>';
  24. exit;
  25. }
  26. //写入数据
  27. $password = MD5($password);
  28. $regdate = time();
  29. $sql = "INSERT INTO user(username,password,email,regdate)VALUES('$username','$password','$email',
  30. $regdate)";
  31. if(mysql_query($sql,$conn)){
  32. exit('用户注册成功!点击此处 <a href="login.html">登录</a>');
  33. } else {
  34. echo '抱歉!添加数据失败:',mysql_error(),'<br />';
  35. echo '点击此处 <a href="javascript:history.back(-1);">返回</a> 重试';
  36. }
  37. ?>

login.html

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml">
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=gbk" />
  6. <title>用户登录</title>
  7. <style type="text/css">
  8. html{font-size:12px;}
  9. fieldset{width:300px; margin: 0 auto;}
  10. legend{font-weight:bold; font-size:14px;}
  11. .label{float:left; width:70px; margin-left:10px;}
  12. .left{margin-left:80px;}
  13. .input{width:150px;}
  14. span{color: #666666;}
  15. </style>
  16. <script language=JavaScript>
  17. <!--
  18. function InputCheck(LoginForm)
  19. {
  20. if (LoginForm.username.value == "")
  21. {
  22. alert("请输入用户名!");
  23. LoginForm.username.focus();
  24. return (false);
  25. }
  26. if (LoginForm.password.value == "")
  27. {
  28. alert("请输入密码!");
  29. LoginForm.password.focus();
  30. return (false);
  31. }
  32. }
  33. //-->
  34. </script>
  35. </head>
  36. <body>
  37. <div>
  38. <fieldset>
  39. <legend>用户登录</legend>
  40. <form name="LoginForm" method="post" action="login.php" onSubmit="return InputCheck(this)">
  41. <p>
  42. <label for="username" class="label">用户名:</label>
  43. <input id="username" name="username" type="text" class="input" />
  44. <p/>
  45. <p>
  46. <label for="password" class="label">密 码:</label>
  47. <input id="password" name="password" type="password" class="input" />
  48. <p/>
  49. <p>
  50. <input type="submit" name="submit" value=" 确 定 " class="left" />
  51. </p>
  52. </form>
  53. </fieldset>
  54. </div>
  55. </body>
  56. </html>

login.php

  1. <?php
  2. session_start();
  3. //注销登录
  4. if($_GET['action'] == "logout"){
  5. unset($_SESSION['userid']);
  6. unset($_SESSION['username']);
  7. echo '注销登录成功!点击此处 <a href="login.html">登录</a>';
  8. exit;
  9. }
  10. //登录
  11. if(!isset($_POST['submit'])){
  12. exit('非法访问!');
  13. }
  14. $username = htmlspecialchars($_POST['username']);
  15. $password = MD5($_POST['password']);
  16. //包含数据库连接文件
  17. include('conn.php');
  18. //检测用户名及密码是否正确
  19. $check_query = mysql_query("select uid from user where username='$username' and password='$password'
  20. limit 1");
  21. if($result = mysql_fetch_array($check_query)){
  22. //登录成功
  23. $_SESSION['username'] = $username;
  24. $_SESSION['userid'] = $result['uid'];
  25. echo $username,' 欢迎你!进入 <a href="my.php">用户中心</a><br />';
  26. echo '点击此处 <a href="login.php?action=logout">注销</a> 登录!<br />';
  27. exit;
  28. } else {
  29. exit('登录失败!点击此处 <a href="javascript:history.back(-1);">返回</a> 重试');
  30. }
  31. ?>

my.php

  1. <?php
  2. session_start();
  3. //检测是否登录,若没登录则转向登录界面
  4. if(!isset($_SESSION['userid'])){
  5. header("Location:login.html");
  6. exit();
  7. }
  8. //包含数据库连接文件
  9. include('conn.php');
  10. $userid = $_SESSION['userid'];
  11. $username = $_SESSION['username'];
  12. $user_query = mysql_query("select * from user where uid=$userid limit 1");
  13. $row = mysql_fetch_array($user_query);
  14. echo '用户信息:<br />';
  15. echo '用户ID:',$userid,'<br />';
  16. echo '用户名:',$username,'<br />';
  17. echo '邮箱:',$row['email'],'<br />';
  18. echo '注册日期:',date("Y-m-d", $row['regdate']),'<br />';
  19. echo '<a href="login.php?action=logout">注销</a> 登录<br />';
  20. ?>
 
 

社交

PHP 附录 : 用户注册与登录完整代码的更多相关文章

  1. PHP用户注册与登录完整代码【4】

    login.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http:// ...

  2. 单点登录SSO:可一键运行的完整代码

    单点登录方案不同于一个普通站点,它的部署比较繁琐:涉及到好几个站点,要改host.安装证书.配置HTTPS. 看到的不少这方面示例都是基于HTTP的,不认同这种简化: 1. 它体现不出混合HTTP/H ...

  3. 吴裕雄 python 人工智能——智能医疗系统后台用户注册、登录和初诊简约版代码展示

    #用户注册.登录模块 #数据库脚本 CREATE TABLE usertable( userid number(8) primary key not null , username varchar(5 ...

  4. Django学习笔记(16)——扩展Django自带User模型,实现用户注册与登录

    一,项目题目:扩展Django自带User模型,实现用户注册与登录 我们在开发一个网站的时候,无可避免的需要设计实现网站的用户系统.此时我们需要实现包括用户注册,登录,用户认证,注销,修改密码等功能. ...

  5. java mail实现Email的发送,完整代码

    java mail实现Email的发送,完整代码 1.对应用程序配置邮件会话 首先, 导入jar <dependencies> <dependency> <groupId ...

  6. jQuery弹出窗口完整代码

    jQuery弹出窗口完整代码 效果体验:http://keleyi.com/keleyi/phtml/jqtexiao/1.htm 1 <!DOCTYPE html PUBLIC "- ...

  7. day19面向对象 , 用户注册和登录

    #!/usr/bin/env python# -*- coding:utf-8 -*- # 1.简述编写类和执行类中方法的流程."""编写:class Person: d ...

  8. Django学习笔记(9)—— 开发用户注册与登录系统

    一,项目题目: 开发用户注册与登录系统 该项目主要练习使用Django开发一个用户注册与登录的系统,通过这个项目然后巩固自己这段时间所学习的Django知识. 二,项目需求: 开发一个简单的用户登录与 ...

  9. Android基于XMPP Smack Openfire下学习开发IM(一)实现用户注册、登录、修改密码和注销等

    http://blog.csdn.net/h7870181/article/details/8653865 以前学习过用Scoket 建立聊天,简单的建立聊天是没问题的,但如果要实现多人复杂的聊天,后 ...

随机推荐

  1. Update(Stage5):Kudu_javaApi使用_Spark整合

    Table of Contents: 2.3. 安装 Zookeeper 2.4. 安装 Hadoop 2.4. 安装 MySQL 2.5. 安装 Hive 2.6. 安装 Kudu 2.7. 安装 ...

  2. Java27个基数点

    1.JAVA中的几种基本数据类型是什么,各自占用多少字节. 2.String类能被继承吗,为什么 不能.在Java中,只要是被定义为final的类,也可以说是被final修饰的类,就是不能被继承的. ...

  3. Python 中的类与对象 初认识

    一:类的声明 1类的关键字: 从第一天第一个项目起我们就接触过关键字,比如False True is not None return for while elif else import等等,这是语言 ...

  4. webdriver-js操作滚动条

    webdriver-js操作滚动条 1.      webdriver高级应用-js操作滚动条 1.滑动页面的滚动条到页面最下面 2.滑动页面的滚动条到页面的某个元素 3.滑动页面的滚动条向下移动某个 ...

  5. postgres语句

    select DISTINCT lxbh from "20190816183245_ld_lxbh_2018" WHERE CHAR_LENGTH("lxbh" ...

  6. 1012 The Best Rank (25分) vector与结构体排序

    1012 The Best Rank (25分)   To evaluate the performance of our first year CS majored students, we con ...

  7. MIT宣布人工智能独立设系!

    导读 MIT宣布人工智能独立设系!AI与电子工程.计算机科学系将三分天下? MIT 电子工程和计算机科学系(EECS)拆分啦.拆分后分为 3 个学科群(faculty),或者说 3 个系:电子工程(E ...

  8. Linux命令:ip命令

    ip命令功能:配置网络属性 一.ip link 系列 ip link ip [-s] link show        # 查看默认信息 ip link show eth0 ip link show ...

  9. Educational Codeforces Round 69 (Rated for Div. 2)D(DP,思维)

    #include<bits/stdc++.h>using namespace std;int a[300007];long long sum[300007],tmp[300007],mx[ ...

  10. 一、log4j日志框架的理论和不同场景使用

    1.日志框架: 工作中要进行Java输出日志时,你需要一个或者多个日志框架.框架能提供对象.方法和必要的配置来发送日志信息.Java语言本身有自带的日志实现包java.util.logging.还有很 ...