重点学习了:

1,ThinkPHP查询数据

2.ThinkPHP添加数据

LianXiController.class.php

 <?php
namespace Home\Controller;
use Think\Controller;
class LianXiController extends Controller
{
//添加数据
function tj()
{ /*
//方法1:(数组)
//添加的数组必须为关联数组,key必须为字段名称
$model = M("info"); $attr = array(
'Code'=>'p007',
'Name'=>'李琦',
'Sex'=>1,
'Nation'=>'n002',
'Birthday'=>'1978-2-3'
); $model->add($attr);//添加数据的方法,需要参数(该参数是一个关联数组)
*/ //方法2:(AR方法)
//1,连接类;2,实体类;3数据访问类 /*
$model = M("info"); $model->Code='p008';
$model->Name='宋酒';
$model->Sex=0;
$model->Nation='n001';
$model->Birthday='1934-2-3'; $model->add();
*/ //方法3:(自动收集表单) if(empty($_POST))
{
$this->display();
}
else
{
$model = M("info"); $model->create(); //自动收集表单,并且创建数据
$model->Sex = $_POST["Sex"]=="男"?true:false; //特殊数据,单独处理
$z = $model->add(); if($z)
{
$this->success("添加成功","tj",6);
}
else
{
$this->error("添加失败","tj",7);
} }
} //查询数据
function show()
{
//Model:数据库中每张表对应一个模型
//类名是表名,类里面的成员变量是表里面的列名
//把一张表对应为一个类,其中一条数据对应一个对象 //如果我们对该表的模型没有特殊操作的话可以不用建立该模型 /*
//实例化Model类
$info = new \Home\Model\InfoModel();
var_dump($info);
*/ //子类对象
/*
$info = D("Info");
var_dump($info);
*/ //造父类对象
/*
$car = M("Car");
var_dump($car);
*/ $model = M("info"); //所有的查询,select()放在最后,返回二维数组 //$attr = $model->select();
//返回所有的数据的二维数组 //$attr = $model->table("Car")->select();
//table()切换操作表 //$attr = $model->field("Code,Name")->select();
//field()制定查询字段,查询哪几段 //$attr = $model->order("Birthday desc")->select();
//order()排序查询 //$attr = $model->where("Code='p001'")->select();
//where()添加查询条件。 //$attr = $model->limit(2,3)->select();
//limit()分页查询:一个参数,查询前N个;两个参数(m,n),跳过m个数据,查询n个 //$attr = $model->page(3,2)->select();
//扩展的方法,取第M页的N条数据 //$attr = $model->table("Car")->field("Brand,count(*)")->group("Brand")->select();
//group分组查询 //$attr = $model->table("Car")->join("Brand on Car.Brand = Brand.Brand_Code")->select();
//join() 连接查询 //$attr = $model->distinct(true)->field("nation")->select();
//distinct() 去重。true 起作用; false 不起作用。 /*
$attr = $model->find("p007");
find() 根据主键取一条数据,不写主键,默认取第一条数据
$attr = $model->select("p002,p003");
根据主键值查询,可以取多个
*/ //var_dump($attr); //数据表格显示
$attr = $model->select();
$this->assign("shuzu",$attr);
$this->display();
}
}

view/LianXi/tj.html

 <body >
<form action="__ACTION__" method="post">
<div>代号:<input type="text" name="Code" /></div>
<div>姓名:<input type="text" name="Name" /></div>
<div>性别:<input type="text" name="Sex" /></div>
<div>民族:<input type="text" name="Nation" /></div>
<div>生日:<input type="text" name="Birthday" /></div>
<input type="submit" value="提交" /> </form> </body>
</html>

/view/LianXi/show.html

 <body>

 <table border="1" width="100%">
<tr>
<td>代号</td>
<td>名称</td>
<td>性别</td>
<td>名族</td>
<td>生日</td>
</tr> <!--接收数据的列表名(成员变量)小写-->
<foreach name="shuzu" item="v">
<tr>
<td><{$v.code}></td>
<td><{$v.name}></td>
<td><{$v.sex}></td>
<td><{$v.nation}></td>
<td><{$v.birthday}></td>
</tr>
</foreach> </table> </body>
</html>

TP数据访问的更多相关文章

  1. ADO.NET编程之美----数据访问方式(面向连接与面向无连接)

    最近,在学习ADO.NET时,其中提到了数据访问方式:面向连接与面向无连接.于是,百度了一下,发现并没有很好的资料,然而,在学校图书馆中发现一本好书(<ASP.NET MVC5 网站开发之美&g ...

  2. 高性能Javascript--高效的数据访问

    接上一篇,希望能写一个高性能Javascript专题. 第一篇:高性能Javascript--脚本的无阻塞加载策略. 参考摘录<高性能Javascript>. 经典计算机科学的一个问题是, ...

  3. 解析大型.NET ERP系统数据访问 对象关系映射框架LLBL Gen Pro

    LLBL Gen Pro是一个为.NET开发人员设计的的对象关系映射(ORM)框架,与NHibernate,Entity Framework等框架一样,通过实体与数据表的映射,实现关系数据库持久化. ...

  4. 架构从最简单的数据访问框架(ORM)到资源调度和治理中心(SOA)说起

    随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,亟需一个治理系统确保架构有条不紊的演进. 单一应用架构当网站流量很小时,只需一个应用,将 ...

  5. ADO.NET数据访问模板整理

    /// <summary> /// 数据访问类:hi_test /// </summary> public partial class TestDA { public Test ...

  6. ADO.NET数据访问技术

    ADO.NET数据访问技术 就是将C#和MSSQLl连接起来的纽带 可以通过ADO.NET将内存中的临时数据写入到数据库中,也可以将数据库中的数据提取到内存中供程序调用.是所有数据访问技术的基础. A ...

  7. Oracle数据访问组件ODAC的安装方法

    Oracle数据访问组件ODAC(Oracle Data Access Components)顾名思义就是用来访问Oracle数据库的小程序.我们可以编程调用这些组件来实现在没有安装Oracle数据库 ...

  8. 分享自己的超轻量级高性能ORM数据访问框架Deft

    Deft 简介 Deft是一个超轻量级高性能O/R mapping数据访问框架,简单易用,几分钟即可上手. Deft包含如下但不限于此的特点: 1.按照Transact-SQL的语法语义风格来设计,只 ...

  9. 在 ASP.NET 中创建数据访问和业务逻辑层(转)

    .NET Framework 4 当在 ASP.NET 中处理数据时,可从使用通用软件模式中受益.其中一种模式是将数据访问代码与控制数据访问或提供其他业务规则的业务逻辑代码分开.在此模式中,这两个层均 ...

随机推荐

  1. 用jQuery调用微信api生成二维码

    其实这个,也没什么实际用途,只能测试一下api能不能用. 1. 用Chrome打开一个https://api.weixin.qq.com/页面,会返回一个错误信息,忽略不管,F12打开控制台 2. 控 ...

  2. Entity Framework使用Sqlite时的一些配置

    前段时间试着用Entity Framework for Sqlite环境,发现了一些坑坑洼洼,记录一下. 同时试了一下配置多种数据库,包括Sqlite.Sql Server.Sql Server Lo ...

  3. MyBatis详解 与配置MyBatis+Spring+MySql

    MyBatis 是一个可以自定义SQL.存储过程和高级映射的持久层框架.MyBatis 摒除了大部分的JDBC代码.手工设置参数和结果集重获.MyBatis 只使用简单的XML 和注解来配置和映射基本 ...

  4. Mysql学习笔记(一)

    技术的王国太过迷人,我刚从事IT就被各种技术所引诱迷惑,什么都想学.我还算言而有信的那一类人,还好有一丁点毅力,于是各种东西都沾染了一点.但是这种遍地开花的情况实在和我的智商不匹配.我没有那么多的精力 ...

  5. POJ3114 Countries in War (强连通分量 + 缩点 + 最短路径 + 好题)

    题目链接 题意是说在几个邮局之间传送一份信件,如果出发点和终止点在同一个国家传递,则时间为0,否则让你求花费最少时间,如果不能传到,则输出Nao e possivel entregar a carta ...

  6. PHP 数据库抽象层pdo

    PDO是PHP数据对象(PHP Data Object)的缩写. pdo就是一个"数据库访问抽象层",作用是统一各种数据库的访问接口,能够轻松地在不同数据库之间进行切换,使得数据库 ...

  7. 9.25 DOM作业

    一<style type="text/css">*{margin:0px auto; padding:0px; font-family:微软雅黑; font-size: ...

  8. 如何以nobody用户执行命令?

    最近在logstash中使用nobody用户启动logstash,一想,nobody用户的shell不是/sbin/nologin吗? 不能登录执行命令呀? 于是看了一下它的启动脚本,是使用其他方式进 ...

  9. centos nc命令安装

    yum install nc.x86_64 nc命令的参数 参数 作用-i 设置数据报传送时间间隔-l 以服务器方式运行-k 重复接收并处理某个端口上的所有连接,必须与-l选项一起使用-n 使用ip地 ...

  10. 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【九】——API变了,客户端怎么办?

    系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 一旦我们将API发布之后,消费者就会开始使用并和其他的一些数据混在一起.然而,当新的需求出现 ...