热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

thinkphp基础编程入门知识汇总

在conf目录下面的config.php是配置文件,可以用来配置数据库信息thinkphp基础编程入门知识汇总

1、配置项目

在conf目录下面的config.php是配置文件,可以用来配置数据库信息。

return array(
//'配置项'=>'配置值'
'DB_TYPE'=>'mysql',
'DB_HOST'=>'localhost',
'DB_NAME'=>'haqiu',
'DB_USER'=>'root',
'DB_PWD'=>'',
'DB_PREFIX'=>'blog_',
//'DEFAULT_THEME'=>'default',

);
?>


2、模板定义
 
 

 



 
 

 



 
 

 



 
 
 

 
 

 



 
 

 


 
 
 
 

 

用户名:
 
 
密 码:
 
 
确认密码:
 
 
邮 箱:
 
 
状态设置:
 
 

3、模型定义

class loginModel extends Model{
protected $_validate = array(
 array('username','checkname','用户名不能为空!',0,'callback',1),
 array('username','','该账号已存在!',0,'unique',1),
 array('password','checkpwd','密码至少六位!',0,'callback'),
 array('repassword','password','确认密码不正确!',1,'confirm'),
 array('email','checkemail','邮箱格式不正确!',0,'callback'),
 );

public function checkname(){
 $name =$_POST["username"];
 if ($name==null){
  returnfalse;
 }
 else {
  returntrue;
 }
}

public function checkpwd(){
 $pwdlen =strlen($_POST["password"]);
 if($pwdlen<6){
  returnfalse;
 }
 else {
  returntrue;
 }
}

public function checkemail(){
 $email = $_POST["email"];
 $a =substr_count($email,'@');
 
 if ($a==1){
  returntrue;
 }
 else {
  returnfalse;
 }
}

protected $_auto = array(
 array('password','md5',1,'function'),
);
  
}
?>

4、逻辑

在项目的Lib\Action目录下自动生成的IndexAction.class.php文件,这个文件就是控制器,完成Index的模块实现。删除IndexAction类默认生成的Index方法,添加新的方法:

// 本类由系统自动生成,仅供测试用途
class IndexAction extends Action{

public function zhuce(){
 $this->display();
}

public function insertUser(){
 $user=D("login");
 $vo =$user->create();
 if($vo != false){
 $user->add();
 $this->redirect('login');
 }else{
  echo$user->getError();
 }
}
   publicfunction login(){
    $this->display();
   }

public function userlogin(){
  $user=M("login");
  //echo$_POST["username"];
  //
  $vo =$user->create();
  $condition["username"] =$vo['username'];
  //echo$condition["username"];
 //var_dump($vo);
 //exit;
  $usercheck =$user->where($condition)->findAll();
  //var_dump ($usercheck);
 // echo $usercheck[0]["password"];
 //$usercheck =$user->getByName($vo['username']);
 //var_dump ( $usercheck);
  if ($usercheck==null){
   echo"用户名不存在";
  }
  elseif($usercheck[0]["password"]!=md5($vo["password"])){
   echo "密码输入错误!";
   }
   else {
  setCOOKIE('user_id',$usercheck[0]["id"],time()+3600);
  $this->redirect('edit');
   }

}

public function edit(){
 //var_dump($_COOKIE["user_id"]);
 $this->display();
}

public function insertblog(){
$diary=D("diary");
$vo=$diary->create();
if($vo != false){
 $diary->add();
 $this->redirect('show');
 }else{
  echo$diary->getError();
 }
}

   publicfunction show(){
 $diary = D("diary");
 $board = D("board");

   $condition["userID"] = $_COOKIE["user_id"];
      $list =$diary->where($condition)->order('iddesc')->find();
 //setCOOKIE("diaryID",$list[0]["id"],time()+3600);
 $_SESSION["diaryID"]=$list["id"];
 echo"主题:".$list["title"]."    时间:".$list["datetime"].'
';
 echo"内容:".$list["content"].'
';
      echo"***********************************************
";

 //var_dump($_SESSION["diaryID"]);
 $conditionBoard["diaryID"] =$_SESSION["diaryID"];
 $boardlist =$board->where($conditionBoard)->order('iddesc')->findAll();
 foreach ($boardlist as$value){
  echo$value["username"]."    ".$value["creat_time"].'
';
  echo$value["content"].'
';
  echo"____________________________________________
";
 }
 
 $this->display();
}

public function boardinsert(){
 $board = D("board");
 $vo =$board->create();
 if($vo != false){
  $board->add();
  echo"评论成功!";
  $this->redirect('show');
 }
 else{
  echo$diary->getError();
 }
}
}
?>


推荐阅读
  • 获取Jedis和Commons Pool JAR包的两种方法及详细步骤
    本文介绍如何通过网盘链接或官方网站获取Jedis和Commons Pool的JAR包,并提供详细的图文教程。同时,还附有导入JAR包到项目的相关建议。 ... [详细]
  • 云计算的优势与应用场景
    本文详细探讨了云计算为企业和个人带来的多种优势,包括成本节约、安全性提升、灵活性增强等。同时介绍了云计算的五大核心特点,并结合实际案例进行分析。 ... [详细]
  • 本问题探讨了在特定条件下排列儿童队伍的方法数量。题目要求计算满足条件的队伍排列总数,并使用递推算法和大数处理技术来解决这一问题。 ... [详细]
  • 解决Anaconda安装TensorFlow时遇到的TensorBoard版本问题
    本文介绍了在使用Anaconda安装TensorFlow时遇到的“Could not find a version that satisfies the requirement tensorboard”错误,并提供详细的解决方案,包括创建虚拟环境和配置PyCharm项目。 ... [详细]
  • 如何将本地Docker镜像推送到阿里云容器镜像服务
    本文详细介绍将本地Docker镜像上传至阿里云容器镜像服务的步骤,包括登录、查看镜像列表、推送镜像以及确认上传结果。通过本文,您将掌握如何高效地管理Docker镜像并将其存储在阿里云的镜像仓库中。 ... [详细]
  • 查找最小值的操作是很简单的,只需要从根节点递归的遍历到左子树节点即可。当遍历到节点的左孩子为NULL时,则这个节点就是树的最小值。上面的树中,从根节点20开始,递归遍历左子 ... [详细]
  • 本文由杨勇和思远于2012年12月27日撰写,主要探讨了如何使用PHP进行网页内容抓取,特别是针对字符较多的网站。文章详细介绍了正则表达式失效的原因,并提供了优化方法,同时展示了如何抓取淘宝服饰栏、天气信息以及IP地址对应的地理位置。 ... [详细]
  • 本文详细介绍了如何在PHP中使用serialize()和unserialize()函数,以及它们在数据传输和存储中的应用。 ... [详细]
  • 在使用STM32Cube进行定时器配置时,有时会遇到延时不准的问题。本文探讨了可能导致延时不准确的原因,并提供了解决方法和预防措施。 ... [详细]
  • 本文探讨了大数据测试的最新进展,涵盖了数据采集、处理和分析的技术和方法。 ... [详细]
  • 阿里云ecs怎么配置php环境,阿里云ecs配置选择 ... [详细]
  • 本文介绍了MindManager在项目管理中的强大功能,特别是其内置的甘特图工具。通过该工具,用户可以轻松创建和管理项目计划,优化任务分配,并与其他软件无缝集成。 ... [详细]
  • 深入理解Lucene搜索机制
    本文旨在帮助读者全面掌握Lucene搜索的编写步骤、核心API及其应用。通过详细解析Lucene的基本查询和查询解析器的使用方法,结合架构图和代码示例,带领读者深入了解Lucene搜索的工作流程。 ... [详细]
  • 本文详细介绍了如何在《仁王》游戏中配置笔记本电脑的独立显卡,确保游戏性能优化。包括A卡和N卡的具体设置步骤。 ... [详细]
  • 探索厦门的地道美食
    厦门不仅以其美丽的自然风光和丰富的文化底蕴吸引着游客,更以种类繁多、风味独特的美食闻名。本文将带您了解厦门的特色小吃,让您在旅行中不仅能欣赏美景,还能大饱口福。 ... [详细]
author-avatar
嘿可爱无罪
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有