找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1458|回复: 0
打印 上一主题 下一主题

基于Codeigniter框架实现的student信息系统站点动态发布功能详解

[复制链接]

2560

主题

2560

帖子

7622

积分

论坛元老

Rank: 8Rank: 8

积分
7622
跳转到指定楼层
楼主
发表于 2018-2-14 05:27:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

            本文实例讲述了基于Codeigniter框架实现的student信息系统站点动态发布功能。分享给大家供大家参考,具体如下:
既然是动态站点,肯定有数据库表的存在,在此不废话,下面我们来看一下数据库表:
CREATE TABLE IF NOT EXISTS `student`(
    //主键id
    `id` int(11) NOT NULL AUTO_INCREMENT,
    //学生姓名
    `s_name` varchar(64) NOT NULL,
    //学生家长的姓名
    `p_name` varchar(64) NOT NULL,
    //学生的家庭住址
    `address` varchar(100) NOT NULL,
    //所在城市
    `city`  varchar(30) NOT NULL,
    //所在国家
    `state` varchar(30) NOT NULL,
    //所在地区的邮政编码
    `zip`  varchar(20) NOT NULL,
    //电话
    `phone` varchar(15) NOT NULL,
    //邮件
    `email` varchar(20) NOT NULL,
    //主键设置
    PRIMARY KEY(`id`)
)ENGINE=INNODB DEFAULT CHARSET=UTF8 AUTO_INCREMENT=1;
*注:在此我有两个地方需要解释一下:
1."IF NOT EXISTS":如果数据在创建表的时候,在前面加上了"IF NOT EXISTS",那就表明即使此表已经存在,也会执行成功;
2."ENGINE=INNODB":这个是数据库的引擎设置,常用mysql数据库引擎有ISAM,MYISAM,HEAP等;
具体参考资料:http://baike.baidu.com/view/68455.htm
在创建完数据表之后,我们再来看一下数据库的连接。打开.\application\config\database.php文件,在内设置数据库变量参数,在.\application\config\config.php文件内设置基本的URL,对于我的基本url是:http://localhost/codeigniter/
下面我们来看看mvc思想架构的设计
首先打开.application\controllers\文件目录,在里面创建一个student.php控制器:
student.php
在此我们先来通过student这个控制器来测试一下,打印出helloworld,记住访问路径是:http://localhost/codeigniter/index.php/student/index
class student extends CI_Controller{
    //student controller construct
    public function __construct(){
     parent::__construct();
    }
    //index test function
    public function index(){
     echo "helloworld";
    }
}
it output: helloworld
下面我们来换一下,看看下面这段code:
class student extends CI_Controller{
    //student controller
    public function __construct(){
      parent::__construct();
    }
    //define a array,name is arraydata, it have three parameters
    protected $arraydata=array(
      'title'=>'Classroom:Home page',
      'headline'=>'welcome to the classroom Mangement System',
      'include'=>'student_index'
    );
    //index function
    public function index(){
      $this->load->view('template',$this->arraydata);
    }
}
这段代码需要一个视图,template.php
template.php:

  
  load->view($include)?>

其中:
this−>load−>view(include);
包含的是另外一个视图文件studen_index.php文件
student_index.php:
Congratulations. Your initial setup is complete!
联合输出:
welcome to the classroom Mangement System
Congratulations. Your initial setup is complete!
数据的CURD
C 控制器
先来看看数据的增加过程,在student控制器中增加一个add()方法
class student extends CI_Controller{
    //student controller
    public function __construct(){
      parent::__construct();
    }
    //new add function
    public function add(){
      $this->load->helper('form');
      //display information for the view
      $data['title']='Classroom:Add Page';
      $data['headline']='Add data';
      $data['include']='student_add';
      //upload view
      $this->load->view('template',$data);
    }
    //create function
    public function create(){
      $this->load->helper('url');
      $this->load->model('MStudent','',TRUE);
      $this->MStudent->addData($_POST);
      redirect('student/add','reflesh');
    }
    //update function
    public function update(){
      //upload codeigniter library
      $this->load->library('table');
      $this->load->model('MStudent','',TRUE);
      $student_query=$this->MStudent->updateData();
      $update_table=$this->table->generate($student_query);
      //display information for the view
      $data['title']='Classroom:Update Page';
      $data['headline']='Update Page';
      $data['include']='update_student';
      $data['updatetable']=$update_table;
      $this->load->view('template',$data);
    }
    //index function
    public function index(){
      $data['title']='Classroom:Home page';
      $data['headline']='welcome to classroom Mangement System';
      $data['include']='student_index';
      $this->load->view('template',$this->arraydata);
    }
}
V 视图
template .php
  
   
  
  
   
    load->view($include)?>
  

student_add.php
".$value.":"
    echo form_input(array('name'=>$value));
    echo "
"
  }
  form_submit('','Add');
  form_close();
?>
update_student.php
M 模型
class MStudent extends CI_Model{
  public function addData($data){
    $this->db->insert('student',$data);
  }
  public function updateData(){
    $this->db->get('student');
  }
}
更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《php优秀开发框架总结》、《ThinkPHP入门教程》、《ThinkPHP常用方法总结》、《Zend FrameWork框架入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总
希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。
            
            
您可能感兴趣的文章:
  • Cisco 路由器动态和静态地址转换
  • 在CODEIGNITER中 在CI中引入外部的JS与CSS呢
  • apache+codeigniter 通过.htcaccess做动态二级域名解析
  • php之CodeIgniter学习笔记
  • 解析CodeIgniter自定义配置文件
  • CI(CodeIgniter)框架介绍
  • CI(CodeIgniter)框架配置
  • CI(CodeIgniter)框架中的增删改查操作
  • Codeigniter注册登录代码示例
  • CodeIgniter模板引擎使用实例
  • Codeigniter框架的更新事务(transaction)BUG及解决方法
  • Codeigniter(CI)框架分页函数及相关知识
  • CI框架给视图添加动态数据
            
  • 分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    用户反馈
    客户端