这周做了个php的简单实例,算是学了这么久php语法的一次综合应用吧,感觉前面学的东西都不知道怎么用,不看教程还真做不出来。本来想把它写在网页弹出层上的,这样看起来更像是一个用户登录框,但是看了弹出层的代码后发现太麻烦了,所有的登录框代码都必须写在一个innerhtml里,以后有时间再去尝试吧!
首先这个实例包括六个文件,用户登录两个(login.html,login.php)、用户注册两个(reg.html,reg.php)、数据库连接(conn.php)、用户中心(my.php)。
用户登录
html文件:主要包括一个表单来输入用户登录信息,加上一段的js代码来初步验证表单(用户输入不能为空),当用户输入为空时,提交时弹出错误信息、并调用focus()方法将输入光标移到错误位置。输入有效信息后将信息通过post方法传递给php文件进一步验证表单。
长这样,虽然不好看,但基本功能都有。
php文件:首先开启会话即session_start();
通过判断$_post[‘submit’]是否为空来鉴定是否存在非法访问行为;为了安全将表单传递过来的用户名和密码分别进行转码($username = htmlspecialchars($_POST['username']);
)和加密($password = MD5($_POST['password']);
);将数据与连接的数据库中的数据进行比较,若匹配则提示用户进入用户中心或注销登录,若不匹配则提示用户返回登录页面。在这里要说的是密码错误和用户名不存在提示的是一条错误信息,可以优化一下使得界面更加友好。
用户注册
注册信息表单填写界面js脚本初步检测用户输入的注册信息是否为空,注册处理模块检测注册信息是否符合要求(输入信息均不为空,两次输入的密码一致,且符合表单给出的输入限制,检查用户名是否已经存在),输入有效将数据写入数据库并提示用户进入到登录页面,输入无效则提示用户返回表单。
要用到的方法:
include(”)//用于包含数据库连接文件,连接数据库
mysql_query()//查询数据库中的数据并返回
mysql_fetch_array()//从结果集中取得一行作为关联数组
my_query()//返回上一个sql操作的错误文本信息
preg_match(x,x)//用于正则表达式与值的匹配
因为是照着教程敲的,所以看起来中规中矩。
数据库连接
<html><meta charset=UTF-8><?php$conn = @mysql_connect("localhost","root","");if(!$conn){ die("无法连接到数据库!" .mysql_error()); } mysql_select_db("user",$conn); mysql_query("set character set 'gbk' "); mysql_query("set names 'gbk'");?></html>
mysql_connect表示连接到数据库localhost为主机名,root为数据库名,后面一个为密码,装wampserver时默认为空。
用户中心
用于打印用户基本信息,包括一个注销链接(注销会结束会话session),一个切换用户链接(直接进入到登录页面)。
【相关教程推荐】
2. php从入门到精通
3. bootstrap教程
已抢65594个
抢已抢30465个
抢已抢16781个
抢已抢8479个
抢已抢11006个
抢已抢22714个
抢