TP数据访问

重点学习了:

1,ThinkPHP查询数据

2.ThinkPHP添加数据

LianXiController.class.php

  1 <?php
  2 namespace  Home\Controller;
  3 use Think\Controller;
  4 class LianXiController extends Controller
  5 {
  6     //添加数据
  7     function tj()
  8     {
  9
 10         /*
 11         //方法1:(数组)
 12         //添加的数组必须为关联数组,key必须为字段名称
 13         $model = M("info");
 14
 15         $attr = array(
 16         ‘Code‘=>‘p007‘,
 17         ‘Name‘=>‘李琦‘,
 18         ‘Sex‘=>1,
 19         ‘Nation‘=>‘n002‘,
 20         ‘Birthday‘=>‘1978-2-3‘
 21         );
 22
 23         $model->add($attr);//添加数据的方法,需要参数(该参数是一个关联数组)
 24         */
 25
 26         //方法2:(AR方法)
 27         //1,连接类;2,实体类;3数据访问类
 28
 29         /*
 30         $model = M("info");
 31
 32         $model->Code=‘p008‘;
 33         $model->Name=‘宋酒‘;
 34         $model->Sex=0;
 35         $model->Nation=‘n001‘;
 36         $model->Birthday=‘1934-2-3‘;
 37
 38         $model->add();
 39         */
 40
 41         //方法3:(自动收集表单)
 42
 43         if(empty($_POST))
 44         {
 45             $this->display();
 46         }
 47         else
 48         {
 49             $model = M("info");
 50
 51             $model->create();    //自动收集表单,并且创建数据
 52             $model->Sex = $_POST["Sex"]=="男"?true:false;    //特殊数据,单独处理
 53             $z = $model->add();
 54
 55             if($z)
 56             {
 57                 $this->success("添加成功","tj",6);
 58             }
 59             else
 60             {
 61                 $this->error("添加失败","tj",7);
 62             }
 63
 64         }
 65     }
 66
 67
 68
 69         //查询数据
 70         function show()
 71         {
 72             //Model:数据库中每张表对应一个模型
 73             //类名是表名,类里面的成员变量是表里面的列名
 74             //把一张表对应为一个类,其中一条数据对应一个对象
 75
 76             //如果我们对该表的模型没有特殊操作的话可以不用建立该模型
 77
 78             /*
 79             //实例化Model类
 80             $info = new \Home\Model\InfoModel();
 81             var_dump($info);
 82             */
 83
 84             //子类对象
 85             /*
 86             $info = D("Info");
 87             var_dump($info);
 88             */
 89
 90             //造父类对象
 91             /*
 92             $car = M("Car");
 93             var_dump($car);
 94             */
 95
 96             $model = M("info");
 97
 98             //所有的查询,select()放在最后,返回二维数组
 99
100             //$attr = $model->select();
101             //返回所有的数据的二维数组
102
103             //$attr = $model->table("Car")->select();
104             //table()切换操作表
105
106             //$attr = $model->field("Code,Name")->select();
107             //field()制定查询字段,查询哪几段
108
109             //$attr = $model->order("Birthday desc")->select();
110             //order()排序查询
111
112             //$attr = $model->where("Code=‘p001‘")->select();
113             //where()添加查询条件。
114
115             //$attr = $model->limit(2,3)->select();
116             //limit()分页查询:一个参数,查询前N个;两个参数(m,n),跳过m个数据,查询n个
117
118             //$attr = $model->page(3,2)->select();
119             //扩展的方法,取第M页的N条数据
120
121             //$attr = $model->table("Car")->field("Brand,count(*)")->group("Brand")->select();
122             //group分组查询
123
124             //$attr = $model->table("Car")->join("Brand on Car.Brand = Brand.Brand_Code")->select();
125             //join() 连接查询
126
127             //$attr = $model->distinct(true)->field("nation")->select();
128             //distinct() 去重。true 起作用; false 不起作用。
129
130             /*
131             $attr = $model->find("p007");
132             find() 根据主键取一条数据,不写主键,默认取第一条数据
133             $attr = $model->select("p002,p003");
134             根据主键值查询,可以取多个
135             */
136
137             //var_dump($attr);
138
139             //数据表格显示
140             $attr = $model->select();
141             $this->assign("shuzu",$attr);
142             $this->display();
143         }
144 }

view/LianXi/tj.html

 1 <body >
 2 <form action="__ACTION__" method="post">
 3 <div>代号:<input type="text" name="Code" /></div>
 4 <div>姓名:<input type="text" name="Name" /></div>
 5 <div>性别:<input type="text" name="Sex" /></div>
 6 <div>民族:<input type="text" name="Nation" /></div>
 7 <div>生日:<input type="text" name="Birthday" /></div>
 8 <input type="submit" value="提交" />
 9
10 </form>
11
12 </body>
13 </html>

/view/LianXi/show.html

 1 <body>
 2
 3 <table border="1" width="100%">
 4 <tr>
 5     <td>代号</td>
 6     <td>名称</td>
 7     <td>性别</td>
 8     <td>名族</td>
 9     <td>生日</td>
10 </tr>
11
12 <!--接收数据的列表名(成员变量)小写-->
13 <foreach name="shuzu" item="v">
14 <tr>
15     <td><{$v.code}></td>
16     <td><{$v.name}></td>
17     <td><{$v.sex}></td>
18     <td><{$v.nation}></td>
19     <td><{$v.birthday}></td>
20 </tr>
21 </foreach>
22
23 </table>
24
25
26
27 </body>
28 </html>

时间: 2024-10-09 07:34:59

TP数据访问的相关文章

重要!!!实体类、数据访问类

创建两个类: users类: using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace 实体类_数据访问类.App_Code { public class Users { private int _Ids; /// <summary> /// ids /// </summary> public int Ids { get { return _Ids;

.NET Framework 2.0中的数据访问新特性

1. 异步数据访问 ? 支持异步数据编程 ? SqlConnection – BeginOpen – EndOpen ? SqlCommand – BeginExecuteNonQuery – BeginExecuteReader – BeginExecuteXmlReader – EndExecuteNonQuery – EndExecuteReader – EndExecuteXmlReader 2. 多活动结果集(MARS) ? 在 SQL Server 2005 中支持多活动结果集 ?

ADO.NET数据访问技术概览

1. 以数据为中心的应用程序设计 1.1. ADO.NET 支持下列的存储类型? 无结构? 有结构, 无层次的数据 – 以逗号分离的数据(CSV) 文件.Microsoft Excel 电子表格.Microsoft Exchange 文件.Active Directory 文件等? 有层次的数据 – XML 文档等? 关系型数据库 – SQL Server.Oracle.Access 等. 1.2. 连接环境? 连接环境是指用户在这种环境下始终保持与数据源的连接? 优点 – 环境易于实施安全控制

实体类、数据访问类中的属性拓展

类中: using System; using System.Collections.Generic; using System.Data.SqlClient; using System.Linq; using System.Text; namespace 实体类_数据访问类.App_Code { public class Users { SqlConnection conn = null; SqlCommand cmd = null; public Users() { conn = new S

Spring数据访问之JdbcTemplate

Spring数据访问之JdbcTemplate 使用JdbcTemplate的基本操作步骤 1.引jar包 项目的基本架构 这里重点看实现类的内容 1 package cn.hmy.dao.impl; 2 3 4 import java.util.List; 5 6 import org.springframework.jdbc.core.support.JdbcDaoSupport; 7 8 import cn.hmy.beans.Emp; 9 import cn.hmy.dao.IEmpDa

Java Web学习系列——Maven Web项目中集成使用Spring、MyBatis实现对MySQL的数据访问

本篇内容还是建立在上一篇Java Web学习系列——Maven Web项目中集成使用Spring基础之上,对之前的Maven Web项目进行升级改造,实现对MySQL的数据访问. 添加依赖Jar包 这部分内容需要以下Jar包支持 mysql-connector:MySQL数据库连接驱动,架起服务端与数据库沟通的桥梁: MyBatis:一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架: log4j:Apache的开源项目,一个功能强大的日志组件,提供方便的日志记录: 修改后的pom.xm

PHP-------PDO:数据访问抽象层

PDO:数据访问抽象层 它是用来做数据访问的,和数据库之间连接,执行一些SQL语句 这种方式比之前的,Mysqli的方式功能更大一些 用一张图来说明: 人为写了一条SQL语句,是通过Mysqli的对象(封装好的类),通过Mysql驱动,然后在操作Mysql数据库.这是以前的方式. 如果这条SQL语句,想访问另外一个数据库,不是Mysql了,想用一下Oracle Call数据库或者SQL Server数据库,根据逻辑,应该还要有一个类是专门操作Oracle Call 数据库的类 同一张图来表示:

php数据访问数据层

数据访问pdo抽象层 方法一:比较简单点: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta htt

数据访问类的封装与三大类

数据访问类的封装: 数据访问类分为三大类:连接类,实体类,数据访问类. 1.连接类: public class lianjie { private static string connection="server=.;database=mydb;uid=sa;pwd=789234178"; public static Sqlconnection conn { get { SqlConnection conn=new Sqlconnection(connecction); return