关联两个数据表,在Model里建立StuModel.class.php:

<?php
//Belongs_to 关联表示当前模型从属于另外一个父对象
namespace Admin\Model;
use Think\Model\RelationModel;
class StuModel extends RelationModel
{
protected $_link = array(
'Clas' => array(
'mapping_type' => self::BELONGS_TO,
'class_name' => 'Clas',
'foreign_key' => 'clas_id',
// 'mapping_name' => 'dept',
),
);
}

  

在view中建立Stu文件夹,建立主页面index.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table>
<tr>
<td>名字</td>
<td>性别</td>
<td>生日</td>
<td>班级</td>
<td>修改</td>
</tr>
<volist name="Stu" id="vo">
<tr>
<td>
{$vo.uname}
</td>
<td>
<if condition="$vo.sex eq 1">

<else/>

</if>
</td>
<td>
{$vo.birthday}
</td>
<td>
{$vo.Clas.cname}
</td>
<td><a href="{:U('Stu/editShow',array('id'=>$vo[id]))}">编辑</a></td>
</tr>
</volist>
</table>
<hr>
<table>
<tr>
<td>名字</td>
<td>性别</td>
<td>生日</td>
<td>班级</td>
<td>修改</td>
</tr>
<tbody id="data"> </tbody>
</table>
<input type="hidden" id="page" value="1">
<input type="submit" id="prev" value="上一页">
<input type="submit" id="next" value="下一页">
<script src="__JS__/jquery-2.2.3.min.js"></script>
<script>
function dataGet(pag_num,count) {
//ajax
$.ajax({
url:'{:U("Stu/ajaxSelect")}',
dataType:'json',
type:'post',
data:{
pag_num:pag_num,
count:count
},
success:function (data) { var str='';
for (var i in data){ if (data[i].sex == 1){
data[i].sex = '男';
}else{
data[i].sex = '女';
} str +=
'<tr>' +
' <td>' +
data[i].uname +
' </td>' +
' <td>' +
data[i].sex +
' </td>' +
' <td>' +
data[i].birthday.substr(0,10) +
' </td>' +
' <td>' +
data[i].Clas.cname +
' </td>' +
' <td><a href="{:U("Stu/editShow")}?id=' + data[i].id + '">编辑</a>' +
'</td>' +
'</tr>' } $('#data').html(str);
$('#page').val(pag_num);
}
})
}
//数据显示数量
dataGet(1,1);
//点击切换
$('#prev').click(function () {
var page = parseInt($('#page').val())
dataGet(page-1,1);
});
$('#next').click(function () {
var page = parseInt($('#page').val())
dataGet(page+1,1);
})
</script>
</body>
</html>

  在Stu中建立修改页面edit.html:

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<table>
<tr>
<td>名字</td>
<td>性别</td>
<td>生日</td>
<td>班级</td>
<td>修改</td>
</tr>
<form action="{:U('Stu/editPost')}" method="post">
<tr>
<td><input type="text" name="uname" value="{$stu.uname}"></td> <td>
<if condition="$stu['sex'] eq 1">
<input type="radio" name="sex" value="1" id="man" checked><labl for="man">男</labl>
<input type="radio" name="sex" value="0" id="woman"><labl for="woman">女</labl>
<else/>
<input type="radio" name="sex" value="1" id="man"><labl for="man">男</labl>
<input type="radio" name="sex" value="0" id="woman" checked><labl for="woman">女</labl>
</if> </td>
<td><input type="text" name="birthday" value="{$stu.birthday}"></td>
<td>
<select name="clas_id">
<option value="">选择班级</option>
<volist name="clas" id="vo">
<if condition="$stu['clas_id'] eq $vo['id']">
<option value="{$vo.id}" selected>{$vo.cname}</option>
<else/>
<option value="{$vo.id}">{$vo.cname}</option>
</if>
</volist>
</select>
</td>
<td>
<input type="hidden" name="id" value="{$stu.id}">
<input type="submit" value="提交">
</td>
</tr>
</form>
</table>
</body>
</html>

  在Controller中建立StuController.class.php:

<?php

namespace Admin\Controller;

use Think\Controller;

class StuController extends Controller
{
public function index(){
$db_stu = D('Stu');
$data_stu = $db_stu->relation(true)->select();
// dump($data_stu);
$this->assign('Stu',$data_stu);
$this->display();
} public function ajaxSelect(){
$pag = I('post.pag_num');
$count = I('post.count');
$db_stu = D('stu');
$data_stu = $db_stu->relation(true)->page($pag,$count)->select();
$this->ajaxReturn($data_stu); }
public function editShow(){
if (IS_GET){
$id = I('get.id');
// dump($id);
$db_stu = M('Stu');
$db_clas = M('Clas');
$data_stu = $db_stu->where('id = '.$id)->find();
$data_clas = $db_clas->where('status = 1')->select();
$this->assign('clas',$data_clas);
$this->assign('stu',$data_stu);
$this->display('Stu/edit');
}
}
public function editPost(){
if (IS_POST){
$data = I('post.');
// dump($data);
$db_stu = M('stu');
$db_stu->save($data);
// dump($m);
$this->success('成功','index');
}
}
}

  

thinkphp信息修改和分页的更多相关文章

  1. ThinkPHP 整合Bootstrap Ajax分页

    ThinkPHP Ajax分页代码 publicfunction index() { $where=array(); $name = I('name'); if(!empty($name)){ $wh ...

  2. 基于jsp+servlet图书管理系统之后台用户信息修改操作

    上一篇的博客写的是查询操作,且附有源码和数据库,这篇博客写的是修改操作,附有从头至尾写的代码(详细的注释)和数据库! 此次修改操作的源码和数据库:http://download.csdn.net/de ...

  3. JQuery DataTables Editor---页面内容修改&&数据库信息修改 (2)

    接上篇博文,详细说一下js代码以及JQuery DataTables Editor---页面内容修改&&数据库信息修改遇到的问题和解决办法. 1.关于dialog 初始化: $(&qu ...

  4. Mp3tag(MP3文件信息修改器) V2.79a 多语绿色版

    软件名称: Mp3tag(MP3文件信息修改器) 软件语言: 多国语言 授权方式: 免费软件 运行环境: Win 32位/64位 软件大小: 3.0MB 图片预览: 软件简介: Mp3Tag 是一款m ...

  5. Ionic 应用图标,信息修改

    Ionic 应用图标,信息修改 Ionic 应用图标 修改 准备好替换的图标并生成各个尺寸的图标 1.使用命令行进入项目根目录,执行命令ionic resources 替换的图片放在resources ...

  6. SpringBoot日记——信息修改PUT篇

    我们常用的功能,除了post和get,还有put和delete,这篇文章就介绍一下这个put的基本用法. 页面跳转和回显 1. 首先,我们之前的页面已经将添加和修改的按钮都做好了,那么如何实现这些按钮 ...

  7. thinkphp 原生sql使用分页类

    public function index(){ import("@.ORG.Page"); //导入分页类 $Dao = M(); $count = count($Dao-> ...

  8. ecshop彻底去版权把信息修改成自己的全教程

    前台部分: 一.去掉头部title部分的ECSHOP演示站-Powered by ecshop 1.问题:“ECSHOP演示站”方法:在后台商店设置 – 商店标题修改2.问题:“ Powered by ...

  9. ThinkPHP 3 的CURD管理用户信息 修改和删除

    本节课大纲: 一.ThinkPHP 3 的CURD管理用户信息 http://localhost:8080/thinkphp/index.php/User/index 访问User类的index方法 ...

随机推荐

  1. [php learn] php 从头開始学习1

    前言:大概在2006年的时候,学习过一段时间的php.而且当时做了一个下载的站点,后来因为读研究生阶段用的是java.j2ee相关,所以php就搁浅掉了,php这些年也发生了非常大的变化,最大一个变化 ...

  2. 1451 - Average 高速求平均值

    怎样高速求取一段区间的平均值 用前缀的思想来看 很easy 可是 本题题意要求的是 大于等于一段长度的区间的平均值的最大值 并且给出的数据范围非常大 O(n*L)的直白比較算法 用于解决此问题不合适 ...

  3. mongodb的备忘录

    https://www.cnblogs.com/best/p/6212807.html

  4. Javascript基本概念梳理

    javascript里的数据类型: 原始类型:数字,字符串.布尔值.(原始值:null,undefined) 对象类型:键值对,数组,function,全局对象(MATH,JSON) 保留字: abs ...

  5. Android 最火框架XUtils之注解机制具体解释

    在上一篇文章Android 最火的高速开发框架XUtils中简介了xUtils的基本用法,这篇文章说一下xUtils里面的注解原理. 先来看一下xUtils里面demo的代码: @ViewInject ...

  6. Android WebView开发常见问题

    1.加入权限:AndroidManifest.xml中必须使用许可"android.permission.INTERNET",否则会出Web page not available错 ...

  7. iOS UITableViewCell 几个方法的优先级

    #第一组   - (void)setDataDict:(NSDictionary *)dataDict;这种方法优先运行 - (id)initWithStyle:(UITableViewCellSty ...

  8. 记录一下收集到的clojure相关的东东

    https://github.com/plexus/chestnut 一个用来调试clojurescript的工具,解决 Clojure, ClojureScript, and CSS的reload问 ...

  9. AndroidStudio更改Gradle的版本

    1.首先需要在Gradle官网上下载需要的gradle版本,对于imac需要放置到AndroidStudio的安装目录下的gradle目录下面 2.更改项目的build.gradle的gradle的版 ...

  10. python 视频逐帧保存为图片

    import cv2 import os def save_img(): video_path = r'F:\test\video1/' videos = os.listdir(video_path) ...