ThinkPHP讲解(六)——添加数据
添加数据到数据库有三种方式
第一种:使用数组添加
$model=D("Info"); //实例化对象
//添加数据的第一种方式:使用数组添加
//要添加的数组,必须是关联数组,key必须为字段名称,字段大小写必须对应
/* $attr=array(
'Code'=>'p004',
'Name'=>'回家',
'Sex'=>true,
'Nation'=>'n002',
'Birthday'=>'1998-2-3'
);*/
/* $attr["Code"]="p005";
$attr["Name"]="数据";
$attr["Sex"]=false;
$attr["Nation"]="n001";
$attr["Birthday"]="1990-3-2";*/
//$model->add($attr); //添加数组的方法,需要参数(该参数是一个关联数组)
第二种:AR方式,用对象
//第二中方式:AR方式,用对象
//主要在.net中使用, 要做三个类1.连接类 2.实体类 3.数据访问类 /* $model->Code="p006";
$model->Name="火炬";
$model->Sex=true;
$model->Nation="n003";
$model->Birthday="1999-4-3"; $model->add(); */
第三种:自动添加表单
1.在模板文件Add.html中制作一个表单
<body>
<form action="__ACTION__" method="post">
<div>代号:<input type="text" name="Code"/></div>
<div>姓名:<input type="text" name="Name"/></div>
<div>性别:
<input type="radio" name="Sex" value="1"/>男
<input type="radio" name="Sex" value="0"/>女
</div>
<div>民族:
<select name="Nation" size="1">
<foreach name="shuzu" item="v">
<option value="<{$v.code}>"><{$v.name}></option>
</foreach>
</select>
</div>
<div>生日:<input type="text" name="Birthday"/></div>
<div><input type="submit" value="添加"/></div>
</form>
</body>

2.通过$_POST收集信息
3.通过create()方法实现数据收集,该方法对于非法的字段会自动进行过滤
//添加数据
function Add()
{
if(empty($_POST))
{
$nation=M("nation");
$attr=$nation->select(); $this->assign("shuzu",$attr); $this->display();
}
else
{
$model=D("Info"); //实例化对象 $model->create(); //自动收集表单并且创建数据 $model->Sex=$_POST["Sex"]=="1"?true:false; $z=$model->add(); if($z)
{
$this->success("添加数据成功","Add",3);
}
else
{
$this->error("添加失败","Add",5);
} } }
注意:如果是主键值重复,这种错误会导致error()方法不跳转页面直接抛出错误信息,这是新版本问题,如果想要跳转,找到

ThinkPHP讲解(六)——添加数据的更多相关文章
- TP框架---thinkphp查询和添加数据
查询 <?php namespace Admin\Controller; use Think\Controller; class MainController extends Controlle ...
- thinkphp添加后台的构思以及添加数据功能
先写个表单提交,这就是个简单的后台了...其实也可以通过phpadmin...phpadmin也叫后台的吧...一切都是为了更方便快捷... 先弄个模板,简单了点,就是为了了解实现的流程和原理 < ...
- ThinkPHP批量添加数据和getField()示例
批量添加数据 // 批量添加数据 $User = M('users'); $dataList[] = array('name'=>'thinkphp','email'=>'thinkphp ...
- thinkphp添加数据 add()方法
thinkphpz内置的add()方法用于向数据库表添加数据,相当于SQL中的INSERT INTO 行为添加数据 add 方法是 CURD(Create,Update,Read,Delete / 创 ...
- ThinkPHP 添加数据到数据库失败
ThinkPHP 添加数据到数据库失败 一般情况下会先检查一下几个方面 检查控制器或Model名是否有误 检查需要插入的数据是否为空或者缺失参数 检查数据表名及字段名称(大部分下都是字段名有误出错的) ...
- ThinkPHP讲解(八)——显示、修改、添加、删除
一.显示数据 <h1>主页面</h1> <table width="100%" border="1" cellpadding=&q ...
- [Asp.net MVC]Asp.net MVC5系列——添加数据
目录 概述 显示添加数据时所用表单 处理HTTP-POST 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列 ...
- PHP---TP框架---添加数据-----有三种方式
添加数据 添加数据有三种方式: 第一种: <?php namespace Home\Controller;//这个文件的命名空间 use Think\Controller;//use使用哪一个而 ...
- WCF学习心得------(六)数据协定
--前言 最近各种事忙的把之前的WCF学习给耽误了一些,今天抽时间把之前的学习内容给总结了一下,因为知识点比较细碎没有做太多的练习示例,只是对其中关键的知识点做了总结,希望可以对大家有所帮助. 第六章 ...
随机推荐
- C语言解析json类型数据
转自:http://buluzhai.iteye.com/blog/845404 首先感谢作者!! 我使用的是cJSON:http://sourceforge.net/projects/cjson ...
- String.format(转)
转自:http://blog.csdn.net/lonely_fireworks/article/details/7962171 方便自己查阅. 常规类型的格式化 String类的format()方法 ...
- [LeetCode]题解(python):107 Binary Tree Level Order Traversal II
题目来源 https://leetcode.com/problems/binary-tree-level-order-traversal-ii/ Given a binary tree, return ...
- 10 Golden Rules of Project Risk Management
The benefits of risk management in projects are huge. You can gain a lot of money if you deal with u ...
- Swift-11-委托模式
委托是一种设计模式,它允许类或者结构体将一些需要它们负责的功能交由(或委托)给其他的类型的实例.委托模式很简单:定义协议来封装那些需要被委托的函数和方法,使其遵循者拥有这些被委托的函数和方法.委托模式 ...
- cxf动态调用wsdl的一个冲突以及解决
cxf发布服务,调用服务的博客很多,这里也就简单贴一下代代码. 环境如下:spring+cxf (maven环境) <cxf.version>2.7.11</cxf.version& ...
- 使用Docker搭建consul集群+registrator实现服务自动注册。
准备工作:10.173.16.83 master10.172.178.76 node110.171.19.139 node210.162.204.252 node3 一.安装consul-cluste ...
- MySQL管理之道:性能调优、高可用与监控内置脚本
MySQL管理之道:性能调优.高可用与监控内置脚本 随书附送脚本 keepalive配置文件和脚本开源工具pssh批量管理服务器(python) 下载地址 http://files.cnblogs.c ...
- Linux就这个范儿 第14章 身在江湖
Linux就这个范儿 第14章 身在江湖 “有人的地方就有江湖”,如今的计算机世界就像一个“江湖”.且不说冠希哥有多么无奈,把微博当QQ的局长有多么失败,就说如此平凡的你我什么时候就成了任人摆布的羔羊 ...
- ■ apache隐藏、混淆php后缀名的几种方法
经常看见有些网站www.***.com/kkk或者www.***.com/kkk.jsp这样访问,其实kkk可能是个php脚本文件,被隐藏了或者混淆了.php后缀,这样至少不会让别人一眼看出网站是ph ...