thinkphp框架实现数据添加和显示功能

yipeiwu_com5年前PHP代码库

最近的几篇随笔将都从thinkPHP框架的使用上着笔,好了,废话不多说,下面是干货。
 这篇文章将围绕采用thinkPHP框架 向数据库中添加数据 和 在网页中显示 这两项功能进行展示。
目的:在add页添加数据后在lists页进行显示(注意:由于thinkPHP框架已经将list字段占用,因此在文件命名时不得使用形如“list.html”的命名方式)
预期页面:    

 

下面就利用MVC架构设计模式对其进行实现
首先利用表单提交方式实现V视图部分,代码如下:

<form role="form" method="post" action="__MODULE__/Admin/User/doAdd">
         <div class="input-group"> <span class="input-group-addon">用<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">户<img src="__PUBLIC__/end/images/em.png" alt="" width="6" height="20">名:</span>
          <input type="text" class="form-control" placeholder="" name="username">
         </div>
         <div class="input-group "> <span class="input-group-addon" for="inputWarning1">真实姓名:</span>
          <input type="text" class="form-control" placeholder="" id="input" name="realname">
         </div>
         <div class="input-group"> <span class="input-group-addon">手机号码:</span>
          <input type="text" class="form-control" placeholder="" name="telphone">
         </div>
         <div class="input-group"> <span class="input-group-addon">电子邮箱:</span>
          <input type="text" class="form-control" placeholder="" name="email">
         </div>
         <div class="input-group"> <span class="input-group-addon">添加时间:</span>
          <input type="text" class="form-control" placeholder="2014-05-22" name="resgistertime">
         </div>
        <div class="input-group"> <span class="input-group-addon">设置密码:</span>
          <input type="text" class="form-control" placeholder="123456" name="password">
         </div>
        <div class="input-group"> <span class="input-group-addon">确认密码:</span>
          <input type="text" class="form-control" placeholder="123456" name="repassword">
         </div>
         <div class="input-group">
          <button type="submit" class="btn btn-primary ">   保<img src="__PUBLIC__/end/images/em.png" alt="" width="20" height="20">存  </button>
         </div>
        </form> 

接下来是M模式部分,个人目前对这一部分的理解是    用来严重添加数据的合法性和给出错误提示   。实现代码如下:

<?php
namespace Admin\Model;
use Think\Model;

class AdminUsersModel extends Model {
  public $_validate = array (
    array("username", "require", "用户名不能为空"),
    array("realname", "require", "真实姓名不能为空"),
    array("password", "require", "密码不能为空"),
    array("repassword", "require", "确认密码不能为空"),
    array("telphone", "require", "电话不能为空"),
    array("email", "require", "邮箱不能为空"),
    array("resgistertime", "require", "注册时间不能为空")
  );
} 

最后是纯粹的逻辑C控制器部分啦,实现代码如下:

public function add(){
  $this->display();
}
public function doAdd(){
  if (!IS_POST) {
    exit("bad request!");
  }
  $adminUsersModel = D("AdminUsers");
  if (!$adminUsersModel->create()) {
    $this->error($adminUsersModel->getError());
  }
  if ($adminUsersModel->add()) {             
    $this->success("添加成功!",U("Admin/User/lists"));
  }
  else{
    $this->error("添加失败!");
  }
  
} 

以上就是整个实现过程了,希望对大家的学习有所帮助
友情链接thinkPHP参考手册:    http://document.thinkphp.cn/manual_3_2.html

原文作者:橙色时光

相关文章

PHP文件锁定写入实例解析

本文以实例讲述了PHP文件写入方法,以应对多线程写入,具体代码如下: function file_write($file_name, $text, $mode='a', $timeo...

PHP使用debug_backtrace方法跟踪调试代码调用详解

本文实例讲述了PHP使用debug_backtrace方法跟踪调试代码调用。分享给大家供大家参考,具体如下: 在开发过程中,例如要修改别人开发的代码或调试出问题的代码,需要对代码流程一步...

PHP自定义函数实现数组比较功能示例

本文实例讲述了PHP自定义函数实现数组比较功能。分享给大家供大家参考,具体如下: <?php //数组使用标准比较运算符这样比较的 function standar...

两千行代码的PHP学习笔记汇总

本文汇总了PHP学习中常见的各类问题,约有两千多行代码,都是非常实用的技巧。分享给大家供大家参考。具体如下: //语法错误(syntax error)在语法分析阶段,源代码并未被执行...

PHP文件生成的图片无法使用CDN缓存的解决方法

今天发现线上有个问题,线上一个图片域名,在前端已经加了CDN缓存,不落缓存,则用PHP动态实现图片缩放,但经PHP处理过的图片输出后,每次都要从后端读取,后端服务器压力瞬间增加,经分析,...