摘要:登陆后跳转的首页(userInfo.php):<?php /** * 从session中提取登录者信息,并且通过smarty渲染管理者页面,传递参数 */ session_start(); //加载smarty require __DIR__.'/config/config.php'; //加载medoo框架 require&nbs
登陆后跳转的首页(userInfo.php):
<?php /** * 从session中提取登录者信息,并且通过smarty渲染管理者页面,传递参数 */ session_start(); //加载smarty require __DIR__.'/config/config.php'; //加载medoo框架 require __DIR__.'/connect.php'; //将管理员信息从后台传到前台,并渲染出模板 $admin = $_SESSION['name']; $id = $_SESSION['id']; //查询数据库的数据,将数据传到前台 $table = 'user'; $field = ['id','name','password','sex','age','email','create_time']; //查询结果为数组 $rows = $db->select($table,$field); //print_r($rows);die; $smarty->assign('rows',$rows); $smarty->assign('admin',$admin); $smarty->assign('id',$id); $smarty->display('userInfo.html');
用户添加user_add.php
<?php /** *处理添加界面传过来的数据 */ //var_dump($_POST); require __DIR__.'/connect.php'; //2.执行添加 $table = 'user'; $data = [ 'name'=>$_POST['name'], 'sex'=>$_POST['gender'], 'age'=>$_POST['age'], 'email'=>$_POST['email'], 'password'=>sha1($_POST['password']), 'create_time'=>time() ]; $stmt = $db->insert($table,$data); $status = 0; $message = ''; if($stmt->rowCount()){ $status = 1; $message='添加成功~~'; }else{ $message = '添加失败~~'; } echo json_encode(['status'=>$status,'message'=>$message]);
渲染修改界面(xr_update.php)
<?php /** * 渲染添加界面 */ //var_dump($_POST); require __DIR__.'/config/config.php'; require __DIR__.'/connect.php'; $id = $_POST['id']; //构建查询条件 $table = 'user'; $field = ['id','name','age','email','password']; $where = ['id'=>$id]; //查询,传值,渲染更新界面 $rows = $db->select($table,$field,$where); //var_dump($rows);die; $smarty->assign('rows',$rows); //$smarty->display('update.html'); echo json_encode($smarty->display('update.html'));
用户修改(user_update.php)
<?php /** *修改用户 */ //var_dump($_POST);die; //1.实例化Medoo框架类 require __DIR__.'/connect.php'; $table = 'user'; $data=[ 'name'=>$_POST['name'], 'password'=>$_POST['password'], 'age'=>$_POST['age'], 'email'=>$_POST['email'] ]; $where['id']=$_POST['id']; $stmt = $db->update($table,$data,$where); $status = 0; $message=''; if($stmt->rowCount()){ $status =1; $message='更新成功~~'; }else{ $message = '更新失败~~'; } echo json_encode(['status'=>$status,'message'=>$message]);
删除用户(del.php)
<?php /** * 删除数据 */ //var_dump($_POST); require __DIR__.'/connect.php'; //前台传过来的需要删除数据的id $id = $_POST['id']; $table = 'user'; $where['id']=$id; $stmt = $db->delete($table,$where); $status=0; $message=''; if($stmt->rowCount()>0){ $status =1; $message = '删除成功~~'; }else{ $message = '删除失败!'; } echo json_encode(['status'=>$status,'message'=>$message]);
首页js代码(userInfo.html),主要通过点击事件实现
<script type="text/javascript"> function logout(){ $.post('../logout.php', function(data){ window.location.href='temp/login.html'; } ) } function add() { $.post('../user_add.php', $('#add').serialize(), function(data){ data = JSON.parse(data); if(data.status==1){ alert(data.message) }else{ alert(data.message); } window.location.reload();//重新加载页面,显示所有数据 }) } function del(id) { //console.log(id); $.post('../del.php', {id:id}, function(data){ //console.log(data); data = JSON.parse(data); if(data.status==1){ alert(data.message) }else{ alert(data.message); } window.location.reload();//重新加载页面,显示所有数据 } ) } function update(id){ // console.log(id); $.post('../xr_update.php', {id:id}, function(data){ //console.log(data); $('body').html(data); }) } </script>
思路以及总结:主要使用bootstrap,smarty,medoo实现,包括登录,注册,对用户进行添加,修改和删除功能。数据表包括管理员和用户两张表。使用了bootstrap中的表单,模态框,在使用$.post()函数传参数时,参数写成json格式的出现问题,修改smarty配置中的定界符,因为默认定界符与json数据的相同,发生冲突。实现添加用户时,使用了模态框,修改信息时,使用$.post()从后台传json格式页面,然后通过$.('').html方式显示出来,这种方式存在问题,显示出修改界面不进行修改,返回时不能进入首页.怎么实现传过来的界面在另一个地址显示,不在返回界面展示,分页功能没有实现。通过这个系统,巩固了bootstrap,smarty和medoo的知识,系统还存在小问题,后期会进行不断的完善。需要多巩固之前的知识,还需要课后多练习。
批改老师:天蓬老师批改时间:2019-01-22 09:12:28
老师总结:通过以上操作, 对MVC的软件开发架构,应该有了新的认识, 开发的思维也有了新高度