用户
 找回密码
 入住 CI 中国社区
搜索
查看: 7449|回复: 6
收起左侧

ci数据库操作实例篇——插入数据 一步一步跟着学

[复制链接]
发表于 2009-8-26 23:05:54 | 显示全部楼层 |阅读模式
转载自http://www.phpall.cn/forum/read.php?tid=24

附件中有所有的源代码,可以下载。
我这里先新建一个数据库 名为:ci_example 编码选择utf8,本教程的所有编码均为utf8,请大家讲数据库编码、php文件编码、ci默认编码全部设置为urt8编码。然后新建一个表,名为news。建表的sql文件我已经导出。在下面可以下载。大家建好ci_example数据库以后,导入表的sql文件即可。
  现在来到编码部分。
我们插入数据,需要先有一个插入数据的表单,我们在views文件夹内新建insertNewsView.php文件。代码如下:
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  • <title>插入新闻</title>
  • </head>
  • <body>
  •   <form action="insert/insertnews" method="post">
  •          标题:<input type="text" name="title" /><br />
  •            内容:<input type="text" name="content" /><br />
  •            <input type="submit" value="提交" />
  •         </form>
  • </body>
  • </html>
表单提交到controller中的insert.php文件中的insertnews方法来处
理。

然后我们编写controller控制器部分的代码。在
controller文件夹中新建insert.php文件。代码如下。
  •   <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0
  • Transitional//EN"
  • "http://www.w3.org/TR/xhtml1/DTD/xhtml1-
  • transitional.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <meta http-equiv="Content-Type" content="text/html;
  • charset=utf-8" />
  • <title>无标题文档</title>
  • </head>
  • <body>
  • <?php
  •   class Insert extends Controller{
  •     function insert(){
  • parent::Controller();
  •       $this-
  • >load->database();
  •      }
  •     function index(){
  •       $this-
  • >load->view('insertnewsView');
  •      }
  •    }
  • ?>
  • </body>
  • </html>
现在我们打开http://127.0.0.1/ci_example/index.php/insert 即可看到插入数据的表单页面。

接着来创建model文件,在models文件夹中新建insertModel.php文件,代码如下
  • <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  • <html xmlns="http://www.w3.org/1999/xhtml">
  • <head>
  • <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  • <title>无标题文档</title>
  • </head>
  • <body>
  • <?php
  • class InsertModel extends Model{
  •    function insertModel(){
  •      parent::Model();
  •     }
  •    function insert($data){
  •      $this->db->insert('news',$data);
  •     }
  •   }
  • ?>
  • </body>
  • </html>
然后我们在控制器中编写插入数据的方法。代码如下:
  • function  insertnews(){
  •       $data=array(
  •           'title'=>$_POST['title'],
  •           'content'=>$_POST['content'],
  •           'time'=>time(),
  •          );
  •       $this->load->model('insertModel');
  •       $this->insertModel->insert($data);
  •       echo "插入数据成功";
  •      }
现在我们填写表单,提交,即可将数据成功插入数据库了。

ci_example.rar

359.34 KB, 下载次数: 139

发表于 2011-10-31 15:55:16 | 显示全部楼层
感谢楼主了
发表于 2011-11-2 20:43:45 | 显示全部楼层
学习了。谢谢
发表于 2011-11-2 22:23:02 | 显示全部楼层
受教了,谢谢
发表于 2011-12-2 11:50:55 | 显示全部楼层
楼主辛苦了
发表于 2011-12-28 15:37:35 | 显示全部楼层
$_POST,最好用$this->input->post('title',TRUE);插入哦,安全过滤
发表于 2012-1-25 15:28:59 | 显示全部楼层
感谢楼主分享

本版积分规则