添加数据到数据库有三种方式

第一种:使用数组添加

                        $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讲解(六)——添加数据的更多相关文章

  1. TP框架---thinkphp查询和添加数据

    查询 <?php namespace Admin\Controller; use Think\Controller; class MainController extends Controlle ...

  2. thinkphp添加后台的构思以及添加数据功能

    先写个表单提交,这就是个简单的后台了...其实也可以通过phpadmin...phpadmin也叫后台的吧...一切都是为了更方便快捷... 先弄个模板,简单了点,就是为了了解实现的流程和原理 < ...

  3. ThinkPHP批量添加数据和getField()示例

    批量添加数据 // 批量添加数据 $User = M('users'); $dataList[] = array('name'=>'thinkphp','email'=>'thinkphp ...

  4. thinkphp添加数据 add()方法

    thinkphpz内置的add()方法用于向数据库表添加数据,相当于SQL中的INSERT INTO 行为添加数据 add 方法是 CURD(Create,Update,Read,Delete / 创 ...

  5. ThinkPHP 添加数据到数据库失败

    ThinkPHP 添加数据到数据库失败 一般情况下会先检查一下几个方面 检查控制器或Model名是否有误 检查需要插入的数据是否为空或者缺失参数 检查数据表名及字段名称(大部分下都是字段名有误出错的) ...

  6. ThinkPHP讲解(八)——显示、修改、添加、删除

    一.显示数据 <h1>主页面</h1> <table width="100%" border="1" cellpadding=&q ...

  7. [Asp.net MVC]Asp.net MVC5系列——添加数据

    目录 概述 显示添加数据时所用表单 处理HTTP-POST 总结 系列文章 [Asp.net MVC]Asp.net MVC5系列——第一个项目 [Asp.net MVC]Asp.net MVC5系列 ...

  8. PHP---TP框架---添加数据-----有三种方式

    添加数据 添加数据有三种方式: 第一种: <?php namespace Home\Controller;//这个文件的命名空间 use Think\Controller;//use使用哪一个而 ...

  9. WCF学习心得------(六)数据协定

    --前言 最近各种事忙的把之前的WCF学习给耽误了一些,今天抽时间把之前的学习内容给总结了一下,因为知识点比较细碎没有做太多的练习示例,只是对其中关键的知识点做了总结,希望可以对大家有所帮助. 第六章 ...

随机推荐

  1. php--tp3.2引入sphinx搜索

    1.首先我们把coreseek下载好,命名为coreseek,我们找到coreseek/etc中的csft_mysql.conf修改这个配置文件 #源定义 source lemai { type    ...

  2. spring.net使用

    1.方法 using System; using System.Collections.Generic; using System.Linq; using System.Text; using Sys ...

  3. ArcGIS API for Silverlight 之ElementLayer使用及TextSymbol的模板使用

    原文:ArcGIS API for Silverlight 之ElementLayer使用及TextSymbol的模板使用 在开发中动态在地图上添加文字信息,可以使用TextSymbol添加文字 // ...

  4. 返回键 隐藏、、收起键盘textView|textField

    /** 隐藏 返回键 的做法,将title置为空 */ self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc]initWith ...

  5. Ubuntu 14.04安装OpenCV 3.1

    从OpenCV官网上下载OpenCV官网上下载OpenCV的未编译源代码: 点击这里 国内很多网络打开OpenCV官网速度缓慢,可以点击如下地址直接从GitHub上下载OpenCV 3.1的源代码 下 ...

  6. iOS Node Conflict svn冲突

    当出现这个冲突时,应该是我add的文件,和同事处理的方法有冲突导致的. 这个的解决办法是:先revert这个文件,然后再update.

  7. asp.net MVC中如何用Membership类和自定义的数据库进行登录验证

    asp.net MVC 内置的membershipProvider可以实现用户登陆验证,但是它用的是自动创建的数据库,所以你想用本地数据库数据去验证,是通过不了的. 如果我们想用自己的数据库的话,可以 ...

  8. Docker 介绍以及其相关术语、底层原理和技术

    https://ruby-china.org/topics/22004 Docker是啥 Docker是一个程序运行.测试.交付的开放平台,Docker被设计为能够使你快速地交付应用.在Docker中 ...

  9. App Store idfa被拒检查办法

    最近应用因为这个问题被拒两次,理由如下: PLA 3.3.12We found your app uses the iOS Advertising Identifier but does not in ...

  10. Definition Questions

    What is the relationship and differences between processes and threads? A process usually represent ...