ThinkPHP学习(二)
书接前文。
我想前台填写内容,然后在后台保存一下,规划了一下前台要录入的内容,主要包括title、content两大内容。然后简单设计了一个前台页面(复杂的我得会啊),就在上篇文章的基础上直接加了:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>ThinkPHP</title>
</head>
<body>
<div class="main">
<h2>{$hello}</h2> <form method='post' action="__URL__/add">
<table cellpadding=2 cellspacing=2>
<tr>
<td >标题:</td>
<td ><input type="text" name="title" ></td>
</tr>
<tr>
<td >内容:</td>
<td><textarea name="content" rows="5" cols="25"></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" class="button" value="提 交"> <input type="reset" class="button" value="清 空"></td>
</tr>
</table>
</form> </div>
</body>
</html>
然后呢,在后台数据库中建立一个表,注意数据配置中的表前缀,包括两个字段就可以:title,content,当然,最好加上个自增长的id.
后台的IndexAction.class.php简单增加一个方法:
<?php
class IndexAction extends Action{
public function index(){
$hello='Hello,ThinkPHP !';
$this->assign('hello',$hello);
$this->display();
}
public function add(){
$form = M('Form');
$form->create();
$form->add();
}
}
对,就是文中的那个简单的add()方法,好了,刷新前台页面,随便录入一些可笑的文字,然后提交....
快到后台打开数据库看一下吧,刚才填写的数据......竟然保存进去了!
后台代码我们没有明确的写数据保存,甚至没有字段的映射!这是真的吗?
是真的,就这么简单,当然,实际中我们可能需要很多的检验处理,比如合法性录入、重复检查等等。但如果简单的,就这样!
(不过在实际情况中大部分都需要自己做一些处理的,什么都交出去有时总不让人放心不是?)
好了,这次的内容就到这里了。
ThinkPHP学习(二)的更多相关文章
- ThinkPHP学习(二)理清ThinkPHP的目录结构及访问规则,创建第一个控制器
ThinkPHP的目录结构 回顾上一篇的安装目录: 目录对应关系 F:\\PHP├─index.php 入口文件├─README.md README文件├─Applicatio ...
- ThinkPHP学习总结
ThinkPHP学习总结 网站开发使用的thinkPHP5.0在此总结备查 MVC关系功能图 一.Thinkphp开发规范 l 类 类库.函数文件统一以.php为后缀: 类的文件名均以命名空间定义,并 ...
- ThinkPhp学习12
原文:ThinkPhp学习12 二.输出模板内容 (重点) a.display 1.display中没有参数 $this->display(); 2.可以带参数 $this ...
- ThinkPhp学习11
原文:ThinkPhp学习11 一.模板的使用 (重点) a.规则 模板文件夹下[TPL]/[分组文件夹/][模板主题文件夹/]和模块名同名的文件夹[Index]/和方法名同名的文件[i ...
- ThinkPhp学习08
原文:ThinkPhp学习08 一.普通查询方式 a.字符串 $arr=$m->where("sex=0 and username='gege'")->find(); ...
- ThinkPhp学习05
原文:ThinkPhp学习05 一.ThinkPHP 3 的CURD介绍 (了解)二.ThinkPHP 3 读取数据 (重点) 对数据的读取 Read $m=new Model('User') ...
- Thinkphp学习04
原文:Thinkphp学习04 一.ThinkPHP 3 的输出 (重点) a.通过 echo 等PHP原生的输出方式在页面中输出 b.通过display方法输出 想分配变量可以使用as ...
- ThinkPhp学习03
原文:ThinkPhp学习03 一.ThinkPHP 3 的输出 (重点) a.通过 echo 等PHP原生的输出方式在页面中输出 b.通过display方法输出 想分配变量可以使用as ...
- ThinkPhp学习02
原文:ThinkPhp学习02 一.什么是MVC M -Model 编写model类 对数据进行操作 V -View 编写html文件,页面呈现 C -Controll ...
随机推荐
- 八一八android与Linux的关系
Linux与Androld的关系 虽然Android基于Linux内核,但是它与Linux之间还是有很大的差别,比如Android在Linux内核的基础上添加了自己所特有的驱动程序.下面我们就来分析一 ...
- 如何配置官方peerDroid,使其运行起来
一.Peer Droid是JXME协议到android平台的移植,开发者可以利用它来实现android设备以及传统PC机通讯的应用程序,peerDroid的官方demo主要是实现PC端peer和and ...
- SQL 连接操作 及 查询分析
- 从数据库中取 datetime类型,界面展示 yyyy-MM-dd
//处理提问时间,去掉时分秒 if(array!=null && array.size()>0){ for(int i=0;i<array.size();i++){ JSO ...
- Sublime Es6教程2-基本语法
2.基本语法 let, const, forEach,for of class, extends, super arrow functions, template string, destructur ...
- .Net 如何实现 LINQ~
本文内容 引入 实现 LINQ 的两个前提 扩展方法 λ 表达式 LINQ 参考资料 本文说明 LINQ 是如何实现的,知道这点,才能更好地使用它~ 如果你刚接触 LINQ,那么可能不会那么快就理解. ...
- WPF 之 创建继承自Window 基类的自定义窗口基类
开发项目时,按照美工的设计其外边框(包括最大化,最小化,关闭等按钮)自然不同于 Window 自身的,但窗口的外边框及窗口移动.最小化等标题栏操作基本都是一样的.所以通过查看资料,可按如下方法创建继承 ...
- WCF服务引用之后自动生成的泛型代理类名称太长的解决方案
问题:WCF服务引用之后会将原来的泛型类自动生成一个代理类,但是有时候名称太长怎么办? 解决方案: 1.方案一: 调用客户端同样也引用这个泛型类的类库. 2.方案二: 找到这个泛型类,然后在上面的[D ...
- 连通性问题--Algorithms IN C读书笔记
近期在看<Algorithms IN C>这本书.刚開始看,读的是英文版的.感觉作者的叙述有点不太easy理解.就找了一本中文版的来看,发现还是看英文版的比較好.先看了第一章的大部分,后面 ...
- NameNode重新格式化以后DataNode不能启动
最近重新格式化NameNode以后,发现几个DataNode都不能启动了. 这是因为dfs.name.dir路径下面有一个current/VERSION文件,里面有一个clusterID,重新格式化以 ...