摘要:登陆后跳转的首页(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的软件开发架构,应该有了新的认识, 开发的思维也有了新高度