一:下面是login.php文本的内容,代码运行的效果图如下,创建一个登录表单,提交方式为post;action='register.php';
当点击提交按钮的时候页面会跳转到register.php,在register.php;对提交过来的数据进行验证;验证通过的话将用户信息写入数据库;
<?php//导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap require'header.php'; ?>//利用bootstrap模板编写表格,实现登录功能 <div class="container"> <div class="row"> <div class="col-md-12"> <h3 class="text-center">用户注册</h3> <form action="register.php" method="post" class="form-horizontal"> <div class="form-group"> <label for="name" class="col-sm-2 control-label">用户名:</label> <div class="col-sm-10"> <input type="text" class="form-control" id="name" placeholder="userName" name="name" value="<?php echo (isset($_POST['name']))?$_POST['name']:''?>"> </div> </div> <div class="form-group"> <label for="email" class="col-sm-2 control-label">邮箱:</label> <div class="col-sm-10"> <input type="email" class="form-control" id="email" placeholder="Email" name="email" value="<?php echo (isset($_POST['email']))?$_POST['email']:''?>"> </div> </div> <div class="form-group"> <label for="password1" class="col-sm-2 control-label">密码:</label> <div class="col-sm-10"> <input type="password" class="form-control" id="password1" placeholder="Password" name="password1" value="<?php echo (isset($_POST['password1']))?$_POST['password1']:''?>"> </div> </div> <div class="form-group"> <label for="password2" class="col-sm-2 control-label">密码确认:</label> <div class="col-sm-10"> <input type="password" class="form-control" id="password2" name="password2" placeholder="Confirm Password" value="<?echo (isset($_POST['password2']))?$_POST['password2']:''?>"> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10 text-center"> <button type="submit" class="btn btn-primary btn-block">注册</button> </div> </div> </form> </div> </div> </div>
二:下面是register.php;中的代码内容;在这个页面对login.php提交过来的用户信息进行验证,通过的话成功添加进入数据库;以下是提交成功的效果图;数据提交成功的话会显示登录页面,用户可以通过用户名和密码进行登录;当然这只是个演示效果图;这里点击登录按钮会跳转到view.php;页面form表单的antion='view.php';connect.php是已经连接好了数据库服务器的代码封装在了connect,php文本中;
<?php /*检测注册表单提交过来的信息 对错误进行处理, 将用户信息插入到用户表中; */ //导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap require'header.php' //$nameTitle的值是添加在header.php中的<title></title>的内容,代码已经在header.php中设置了 $nameTitle='注册验证';//设置当前页面标题 require 'header.php';//引入公共头部 //对用户注册信息进行处理 ;判断如果是login.php中提交过来的信息则进行验证 if($_SERVER['REQUEST_METHOD']=='POST'){ $error[]='';//创建一个错误信息用来保存数组; if(empty($_POST['name'])){//检测用户名 $error[]='没有输入用户名,请检查'; }else{ $name=isset($_POST['name'])?$_POST['name']:null; } if(empty($_POST['email'])){//检测邮箱 $error[]='没有输入邮箱,请检查~~~'; }else{ $email=isset($_POST['email'])?$_POST['email']:null; } /*检测密码,因为密码要输入两边所以要做相等校验 */ if(empty($_POST['password1'])){ $error[]='没有输入密码'; }elseif(empty($_POST['password2'])){ $error[]='没有确认密码'; }elseif($_POST['password1']==$_POST['password2']){ $password=trim($_POST['password1']); } //输出错误信息 if(!empty($error)){ //对错误信息的内容进行遍历 foreach($error as $value){ echo '<h2 style="color:red">'.$value.'</h2>'; } } require 'connect.php';//连接数据库服务器 mysql_set_charset('utf8',$conn); //设置客户端字符集 mysql_select_db('demo');//选择数据库 //编写sql 语句; $sql="INSERT user1 SET name='{$name}',email='{$email}',password=sha1('{$password}')"; //判断是否添加成功如果成功输出数据表中添加额数据条数,以及新增主键的id; $res=mysql_query($sql,$conn); if($res){ echo '成功添加了'.mysql_affected_rows($conn).'条数据,新增主键为'.mysql_insert_id($conn); }else{ echo die('添加数据失败'.mysql_error($conn)); } //关闭数据库; mysql_close($conn); } //创建登录界面echo <<<'INPUT' <div class="container"> <div class="row"> <div class="col-md-12"> <h3 class="text-center">用户登录</h3> <form class="form-horizontal" action="view.php" method="post"> <div class="form-group"> <label for="name" class="col-sm-2 control-label">用户名</label> <div class="col-sm-10"> <input type="text" class="form-control" id="name" placeholder="请输入用户名" name="name" > </div> </div> <div class="form-group"> <label for="password1" class="col-sm-2 control-label">密码</label> <div class="col-sm-10"> <input type="password" class="form-control" id="password1" placeholder="请输入密码" name="password1"> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10 text-center"> <button type="submit" class="btn btn-primary btn-block">登录</button> </div> </div> </div> </div> </div>
INPUT; ?>
三:以下是view.php,在这个页面实现了数据库的信息查询功能,并且把查询到的用户信息以表格的形式在页面中显示;以下是演示效果图;在用户信息列表中新增了删除和修改按钮;我们要实现的功能是,当点击修改时,可以修改用户邮箱信息;当点击删除是,可以删除正在操作的用户的信息;connect.php是已经连接好了数据库服务器的代码封装在了connect,php文本中;
<?php //$nameTitle的值是添加在header.php中的<title></title>的内容,代码已经在header.php中设置了 $nameTitle='用户信息列表'; //导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap require 'header.php';//导入头部 //连接数据库 require 'connect.php'; mysql_select_db('demo',$conn);//选择数据库 mysql_set_charset('utf8',$conn);//设置客户端字符集 //编写sql 语句实现查询用户信息功能 $sql="SELECT * FROM user1"; $res=mysql_query($sql,$conn);//执行SQL语句返货一个结果集放在变量$res中; if($res && mysql_num_rows($res)>0){ //判断资源结果集是否为空,如果结果集存在并且内容发育一天则执行下面代码反正则输出数据表///中没数据; echo '<h4 style="text-align:center;line-height:60px;">用户信息列表</h4>'; echo '<table border="1" cellpadding="0" cellspacing="0" width="800" style="border-radius:10px;text-align:center;margin:0 auto;">'; echo '<tr bgcolor="antiquewhite" height="40">'; echo '<td>ID</td>'; echo '<td>name</td>'; echo '<td>email</td>'; echo '<td>password</td>'; echo '<td>操作</td>'; echo '</tr>'; //while(){}语句遍历数组 while($rows=mysql_fetch_assoc($res)){ echo '<tr style="height:35px;">'; echo '<td>'.$rows["id"].'</td>'; echo '<td>'.$rows["name"].'</td>'; echo '<td>'.$rows["email"].'</td>'; echo '<td>'.$rows["password"].'</td>'; echo "<td> //将修改的按钮href='edit.php';将用户id传到edit.php页面 <a class='btn btn-primary' href='edit.php?id=".$rows['id']."' role='button'>编辑</a> //将删除的按钮href='delete.php';将用户id传到delete.php页面 <a class='btn btn-danger' href='delete.php?id=".$rows['id']."'>删除</a> </td>"; echo '</tr>'; } echo '</table>'; }else{ echo '数据表中没有数据'; } mysql_free_result($res);//释放资源结果集 //关闭数据库连接 mysql_close($conn); ?>
四:以下是edit.php代码;在这个文本对用户信息修改页面,在这个页面提交要修改的用户的email;将用户名设为只读模式;接受view.php提交过来的id;将获得的id赋给$id;将修改信息的表单action设为'do_edit.php?$id';这样可以在do_edit.php 通过接受用户的id值来实现修改用户信息的功能;运行效果图如下;输出的数组是我对提交过来的id对应的用户信息进行输出;connect.php是已经连接好了数据库服务器的代码封装在了connect,php文本中;
<?php $nameTitle='信息修改';//修改用户信息页面//导入头部 //导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap require 'header.php'; //获取传过来的Id $id=isset($_GET['id'])?$_GET['id']:null; echo $id; //连接数据库服务器 require 'connect.php'; //选择数据库 mysql_select_db('demo',$conn); //设置客户端字符集 //mysql_set_charset('utf8',$conn); //$email=isset($_GET['email'])?$_GET['email']:null; $sql="SELECT * FROM `user1` WHERE `id` = ".$id; //执行sql语句 $res=mysql_query($sql,$conn); if($res && mysql_num_rows($res)){ $rows=mysql_fetch_assoc($res); print_r($rows); }else{ echo die('选择数据失败'.mysql_error($conn)); } ?> <div class="container"> <div class="row"> <div class="col-md-12"> <h3 class="text-center">用户信息修改</h3> <form class="form-horizontal" action="do_edit.php?id=<?php echo $rows['id']?>" method="post"> <div class="form-group"> <label for="name" class="col-sm-2 control-label">用户名</label> <div class="col-sm-10"> <input type="text" class="form-control" id="name" placeholder="请输入用户名" name="name" readonly> </div> </div> <div class="form-group"> <label for="email" class="col-sm-2 control-label">邮箱</label> <div class="col-sm-10"> <input type="email" class="form-control" id="email" placeholder="请输入邮箱地址" name="email" value="<?php echo (isset($_POST['email']))?$_POST['email']:''?>"> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10 text-center"> <button type="submit" class="btn btn-primary btn-block">确认</button> </div> </div> </div> </div> </div> <script> //当点击确认按钮的时候会出现一个弹窗,是否确认修改用户信息;点击确认数据才会提交到do_edit.php页面; var btn=document.getElementsByTagName('button')[0]; btn.onclick=function(){ alert('确认修改信息'); } </script>
五:以下是do_edit.php文本的代码;在这里实现了用户信息的修改功能;对数据库里面的用户信息进行修改;接受了edit.php提交过来的数据;并对数据进行处理;connect.php是已经连接好了数据库服务器的代码封装在了connect,php文本中;
<?php //设置当前页面标题 $nameTitle='信息修改页面'; require'header.php';//导入头部 //导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap //连接数据库服务器 if($_SERVER['REQUEST_METHOD']=='POST'){ //获取提交过来的邮箱地址赋给$email; $email=isset($_GET['email'])?$_GET['email']:null; if(empty($email)){ //如果提交过来的邮箱值为空,则返回edit.php页面,并提示输入邮箱地址; echo '<script>alert("请输入邮箱地址");history.back()</script>'; exit; }else{ //如果邮箱有值得话,那么将用户id 赋给$id; $id=isset($_POST['id'])?$_POST['id']:null; //连接数据库; require 'connect.php'; //选择数据库 mysql_select_db('demo',$conn); //设置客户端字符集 mysql_set_charset('utf8',$conn); //编写修改语句;将选择的用户信息进行修改 //设置执行修改操作时有一个弹窗;点击确认会执行修改操作,点击取消会返回指定页面 echo<<<'INPUT' <script> if(confirm("确认修改吗")){ }esle{ location.href='view.php'; } </script> INPUT; $sql="UPDATE user1 SET `email`='{$email}' WHERE id='{$id}'"; //执行sql语句,将返回的结果集赋给变量$res; $res=mysql_query($sql,$conn); //如果变量存在的话,则sql语句执行成功;这时候查询数据库会发现用户信息已经被修改; if($res){ // echo '<script>alert("修改数据成功");location.href("www.localhost/view.php")</script>'; }else{ echo die('修改数据失败'.mysql_error($conn)); } } } //释放资源结果集 mysql_free_result($res); //关闭数据库服务器连接; mysql_close($conn); ?>
六;下面的文本是delete.php中的代码;也就是view.php中的删除按钮点击跳转的页面;顾名思义在这个页面我们要实现的功能是对提交过来的数据执行删除功能,注意删除是一个很危险的操作,一不小心会将数据库清空,一定要有where条件;connect.php是已经连接好了数据库服务器的代码封装在了connect,php文本中;
<?php //导入头部:header.php是一个已经编写好的文件,主要是页面头部内容,其中已经引入了js,hootstrap require 'header.php'; //连接数据库; require 'connect.php'; //对提交过来的用户id 进行取值; $id=isset($_GET['id'])?$_GET['id']:null; //选择数据库; mysql_select_db('demo',$conn); //设置客户端字符集; mysql_set_charset('utf8',$conn); //执行删除操作时设置一个弹窗,当点击确认时会执行删除操作,点击取消时会返回指定页面 echo <<<'INPUT' <script> if(confirm("确认删除吗?")){ }else{ location.href='view.php'; } </script> INPUT; //编写sql语句;执行删除功能 $sql="DELETE FROM user1 WHERE id=".$id; //执行sql语句,将结果集赋给变量$res; $res=mysql_query($sql,$conn); //判断删除是否成功,如果成功则返回view.php页面;否则是删除失败出现错误信息; if($res){ echo '<script>alert("删除数据成功");history.back()</script>'; }else{ echo die("删除数据失败".mysql_error($conn)); } //mysql_free_result($res); //关闭数据库服务器连接; mysql_close($conn); ?>