修改的三种方式

//造数组的方式修改
public function xiugai1()
{
    $db=D('yonghu');
    $attr=array
    (
         'zhanghao'=>001,        //主键值需要与数据库相同
         'mima'=>123,
         'mingzi'=>'刘大',
         'xingbie'=>'男',
         'shengri'=>'1990-07-09',
         'shijian'=>'2016-6-16 14:09:30',
         'shengfen'=>'用户',
         'zhuangtai'=>'已激活',
    );
    $db->save($attr);           //调用save方法保存修改
}

//修改类成员的方式修改
public function xiugai2()
{
    $db=D('yonghu');
    $db->mingzi='刘姐';
    $db->xingbie='女';
    $db->where("zhanghao='001'")->save();
}

//自动收集表单修改
public function xiugai3()
{
    $db=D('yonghu');
    $db->create();       //调用自动收集表单
    $db->save();
}

删除数据库数据的方式

    //删除数据库数据的方式
    public function shanchu()
    {
        $db=D('yonghu');
        $db->delete("002");      //根据主键值删除
        $db->where(“条件”)->delete();  //根据条件删除
    }

 创建表单静态验证的方式

(1)在模块的Model文件夹下创建模型  命名规则->   表名Model.class.php

<?php
namespace Home\Model;
use Think\Model;
class yonghuModel extends Model
{
    //静态验证
    protected $_validate = array
    (
         array('zhanghao','require','账号不能为空',1),
         array('mima','require','密码不能为空',1),
         array('mima','mima0','两次输入的密码不一致',1,'confirm'),
    );
}

(2)创建调用方法

    public function zhuce()
    {
        if(empty($_POST['zhuce']))
        {
            $this->display();                 //调用视图模板
        }
        else
        {
            $db=new \Home\Model\yonghuModel;  //实例化数据模型,不能使用D和M方法
            if(!$db->create())                //自动收集表单,通过验证时返回true
            {
                echo $db->getError();         //输错验证错误信息
            }
        }
    }

(3)创建模板表单 (注:name和数据库表的列名一一对应)

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>注册界面</title>
<css href="__PUBLIC__/CSS/zhuce.css" />   //引入css文件的方法,css文件存放在 Tp/Public/css下
</head>

<body>
<h1>注册界面</h1>
<form action="__ACTION__" method="post">
    <div>
        <span>请输入账号</span>
        <input type="text" name="zhanghao" />
    </div>
    <div>
        <span>请输入密码</span>
        <input type="password" name="mima" />
    </div>
    <div>
        <span>请确认密码</span>
        <input type="password" name="mima0" />
    </div>
    <div>
        <span>请输入姓名</span>
        <input type="text" name="xingming" />
    </div>
    <div>
        <span>请输入性别</span>
        <input type="radio" checked='true' name='xingbie' value="男"/>男
        <input type="radio" name='xingbie' value="女"/>女
    </div>
    <div>
        <span>请输入民族</span>
        <input type="text" name="mingzu"/>
    </div>
    <div>
        <span>请输入生日</span>
        <input type="text" name="shengri"/>
    </div>
    <div>
        <input type="submit" name="zhuce" value="确认注册"/>
    </div>
</form>
</body>

创建动态表单动态验证方式(使用动态验证方式支持D和M方法实例化数据库模型,并且在使用D和M方法实例化时不用创建子模型)

    public function zhuce()
    {
        if(empty($_POST['zhuce']))
        {
            $this->display();
        }
        else
        {
            $db=new \Home\Model\yonghuModel;               //支持D方法
            $yanzheng=array                                //以二位数组的方式创建验证条件
            (
                array('zhanghao','require','用户名不能为空'),
            );
            if(!$db->validate($yanzheng)->create())        //调用validate方法将验证条件添加进模型
            {
                echo $db->getError();                      //调用getError方法输出验证错误信息
            }
        }    }

第 一 百 天上课 PHP TP框架 数据库修改和删除的更多相关文章

  1. 第九十九天上课 PHP TP框架 数据库查询和增加

    在Model文件夹下创建模型,文件命名规则 : 表名Model.class.php <?php namespace Home\Model; use Think\Model; class yong ...

  2. TP框架的修改,删除

    先把数据库的素具显示出来 public function xiugai() { $code= "n001";//修改的主键值 $n = M("nation"); ...

  3. 第一零二天上课 PHP TP框架 引入文件路径问题和调用验证码的方式

    外部文件引入到视图模板的方式       1,将外部文件放在Public文件夹下,用load标签引入       2,在模板出书写引入代码(方法有很多,只有以下方法不容易出问题) <load h ...

  4. 第一零五天上课 PHP TP框架下分页

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  5. 第一零四天上课 PHP TP框架下的文件上传

    控制器代码(TestController.class.php) <?php namespace Home\Controller; use Home\Controller\EmptyControl ...

  6. 第一零三天上课 PHP TP框架下控制器的方法分离

    (1)配置信息 修改配置文件->Config.php (配置后,原先的控制方法无效) 'ACTION_BIND_CLASS' => TRUE, // 控制器方法分离 (2)在Control ...

  7. TP框架数据库操作(增删改)

    首先选择一张表,对其进行操作: 对数据库操作之前首先要创建模型: $n = M("account"); 数据库添加数据: 1.使用数组: 1.使用数组 $arr = array(& ...

  8. 模型层TP框架数据库的操作

    在shop入口的文件下的HOME文件夹中使用模型层 第一步修改配置模块把数据库的各种链接做好,打开HOME中的conf文件夹中的config.php,找到Thinkphp文件加下的conf文件打开co ...

  9. TP框架---thinkphp修改删除数据

    1.在控制器MainController里面写一个方法,调用Nation表中的数据. public function zhuyemian() { $n = D("Nation"); ...

随机推荐

  1. SendInput模拟Win(VK_LWIN)键的问题

    使用SendInput模拟按键,代码如下: #include "stdafx.h" #include <windows.h> #include <conio.h& ...

  2. 网络数据包收发流程(四):协议栈之packet_type

    进入函数netif_receive_skb()后,skb正式开始协议栈之旅.先上图,协议栈大致过程如下所示:跟OSI七层模型不同,linux根据包结构对网络进行分层.比如,arp头和ip头都是紧跟在以 ...

  3. linux常见目录的作用

    根目录下的bin 和sbin,usr目录下的bin和sbin四个都是保存系统命令.bin下的普通用户都可以使用,sbin下只有超级用户root可以使用 pro和syc不能直接操作,是内存的过载点 / ...

  4. hdu4497 GCD and LCM ——素数分解+计数

    link:http://acm.hdu.edu.cn/showproblem.php?pid=4497 如果G%L != 0,说明一定无解. 把K = G / L质数分解,G / L = p1^t1 ...

  5. C++中的vector

    opencv中用到了很多vector  整理一下 vector容器是一个模板类,可以存放任何类型的对象(但必须是同一类对象).vector对象可以在运行时高效地添加元素,并且vector中元素是连续存 ...

  6. 为 C# 代码生成 API 文档(译)

    原文地址:http://broadcast.oreilly.com/2010/09/build-html-documentation-for-y.html#comments Sandcastle 功能 ...

  7. 电脑结构和CPU、内存、硬盘三者之间的关系

    前面提到了,电脑之父——冯·诺伊曼提出了计算机的五大部件:输入设备.输出设备.存储器.运算器和控制器. 我们看一下现在我们电脑的: 键盘鼠标.显示器.机箱.音响等等. 这里显示器为比较老的CRT显示器 ...

  8. DuoCode测试

    http://duoco.de/ DuoCode 只能引用自己编译的DLL,不能引用外部DLL.这么做可以保证”代码编得过,就一定能跑“. SharpKit 遇到过这样的问题.在代码中使用了 list ...

  9. CompositeConfiguration的用法

    public class Mytest { private static ApplicationContext applicationContext; public static void main( ...

  10. POJ-2726-Holiday Hotel

    Holiday Hotel   Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 8302   Accepted: 3249 D ...