ThinkPHP学习教程增删改查操作[附源码]

项目测试环境:
 
Window XP sp3
WAMP(httpd-2.2.19-win32-x86-no_ssl.msi、mysql-5.1.57-win32.msi、php-5.2.17-Win32-VC6-x86.zip)
ThinkPHP_3.0_Full.7z

Eclipse PHP Studio (EPP) 中文版               

使用ThinkPHP创建应用的一般开发流程是:
  • 创建数据库和数据表;(没有数据库操作可略过)
  • 项目命名并创建项目入口文件;
  • 完成项目配置;(无需额外配置可以忽略)
  • 创建控制器类;
  • 创建模型类;(如果只是简单的模型类可以不必创建)
  • 创建模板文件;
  • 运行和调试。
1、创建数据库和数据表
数据库名称think_example:
     CREATE TABLE `think_blog` (
          `id` int(11) unsigned NOT NULL auto_increment,
          `title` varchar(32) NOT NULL default '',
          `content` text NOT NULL,
          PRIMARY KEY (`id`)
     ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
2、创建项目
     在apache DocumentRoot 所在目录下创建应用(注:这里根据测试环境会有不同 例如我的D:\dev\apache\htdocs\),项目名thinkphpLearing,同时将ThinkPHP核心拷贝到thinkphpLearing下,接着新建入口文件index.php
<?php
/*
 * Created on 2013-1-30
 *
 * email study@hacktea8.com
 *
 */
 // 定义ThinkPHP框架路徂
define('THINK_PATH', './ThinkPHP/');
//定义项目名称和路徂
define('APP_NAME', 'thinkphpLearing');
define('APP_PATH', '.');
// 加载框架入口文件
require(THINK_PATH."/ThinkPHP.php");
//实例化一个网站应用实例
App::run();
?>
 
访问成功后,看到成功页面:
 
3、项目配置
     在自动生成的目录下面,已经创建了一个空的项目配置文件,.Conf/config.php
打开增加项目配置信息:
<?php
return array(
    //'配置项'=>'配置值'
    'APP_DEBUG' => true, // 开启调试模式 
    'DB_TYPE'=> 'mysql', // 数据库类型 
    'DB_HOST'=> 'localhost', // 数据库朋务器地址 
    'DB_NAME'=>'think_example', // 数据库名称 
    'DB_USER'=>'root', // 数据库用户名 
    'DB_PWD'=>'root', // 数据库密码 
    'DB_PORT'=>'3306', // 数据库端口 
    'DB_PREFIX'=>'think_', // 数据表前缀
    'DEFAULT_THEME'=>'DEFAULT',//如果有多个模板主题的话,可以用DEFAULT_THEME 参数设置默认的模板主题名。
    'TMPL_L_DELIM'=>'<{',//项目的标签左分隔符
    'TMPL_R_DELIM'=>'}>',//项目的标签右分隔符
 
);
?>
4、增加业务逻辑(增加为例) 
    .Lib/Action下,自动生成的IndexAction.class.php(控制器),注释(或者删除)掉当前的index方法,添加新的insert、delete、update、query、index方法:
<?php
// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action {
    public function index(){
        //默认界面[查询界面]
        $Mblog = M('blog'); // 实例化模型类 
        //$Mblog->Create();
        $list = $Mblog->select(); // 查询数据 
        $this->assign('list', $list); // 模板发量赋值 
//        echo "<pre>";
//        var_dump($list);exit;
        $this->display('index'); // 输出模板 
        exit;
    }
    public function insert(){
    //添加的动作
    $Mblog=M('blog');//实例化模型类
    //$data=array('title'=>$_POST['title'],'content'=>$_POST['content']);
    $Mblog->create();
    //var_dump($data);exit;
    $insertid=$Mblog->add();
        $this->assign('lastid',$insertid);
        //var_dump($insertid);exit;
    $this->redirect('index');//成功后重定向到index页面
    exit;
    }
    public function delete(){
    //删除的动作
    $Mblog=M('blog');//实例化模型类
    $where='id='.$_GET['id'];
    $Mblog->where($where)->delete();
    $this->redirect('index');//操作成功重定向到index模板
    exit;
    }
    public function edite(){
    //更新的界面
    $where='id='.$_GET['id'];
    $Mblog=M('blog');
    $list=$Mblog->where($where)->select();
//      echo "<pre>";
//      var_dump($list);exit;
    $this->assign('info',$list);
    $this->display();
    exit;
    }
    public function update(){
    //更新的动作
    $Mblog=M('blog');
    $Mblog->create();
    $status=$Mblog->save();
    if($status>0){
        //更新成功
        $this->redirect('index');
    }else{
        //更新失败
        $this->redirect('edite');
    }
    exit;
    }
}
5、增加业务逻辑对应模板
 
6、测试例子是否正常
经测试都正常[添加、删除、更新操作]
 
Tips:如果在测试过程中出现错误,请删除.Runtime/~runtime.php文件在测试
 【源码】
thinkphpLearing
 
原文出处:
原文地址:https://www.cnblogs.com/zhongbin/p/2886484.html