CI框架(CodeIgniter)实现的数据库增删改查操作总结
author:一佰互联 2019-04-25   click:170

本文实例讲述了CI框架(CodeIgniter)实现的数据库增删改查操作。分享给大家供大家参考,具体如下:

controllers下的 cquery.php文件

<?phpclass CQuery extends Controller {  //构造函数  function CQuery() {    parent::Controller();//   $this->load->database();  }  function index() {    //调用model 其中train为外层文件夹  MQuery为model名称 queryList为重命名    $this->load->model("train/MQuery","queryList");    //获得返回的结果集  这里确定调用model中的哪个方法    $result = $this->queryList->queryList();    //将结果集赋给res    $this->smarty->assign("res",$result);    //跳转到显示页面    $this->smarty->view("train/vquery.tpl");  }  //进入新增页面  function addPage() {    $this->smarty->view("train/addPage.tpl");  }  //新增  function add() {    //获得前台数据    //用户名    $memberName = $this->input->post("memberName");    //密码    $password = $this->input->post("password");    //真实姓名    $userRealName = $this->input->post("userRealName");    //性别    $sex = $this->input->post("sex");    //出生日期    $bornDay = $this->input->post("bornDay");    //e_mail    $eMail = $this->input->post("eMail");    //密码问题    $question = $this->input->post("question");    //密码答案    $answer = $this->input->post("answer");    //调用model    $this->load->model("train/MQuery","addRecord");    //向model中的addRecord传值    $result = $this->addRecord->addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer);    //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是""    if ($result) {      $this->index();    } else {      echo "add failed.";    }  }  //删除  function deletePage() {    //获得ID    $deleteID = $this->uri->segment(4);    //调用model    $this->load->model("train/MQuery","delRecord");    //将值传入到model的delRecord方法中    $result = $this->delRecord->delRecord($deleteID);    //判断返回值    if ($result) {      $this->index();    } else {      echo "delect failed.";    }  }  //修改先查询  function changePage() {    $changeID = $this->uri->segment(4);    $this->load->model("train/MQuery","changeRecord");    $result = $this->changeRecord->changeRecord($changeID);    //将结果集赋给res    $this->smarty->assign("res",$result);    //跳转到显示页面    $this->smarty->view("train/changePage.tpl");  }  //修改  function change() {    //获得前台数据    //ID    $ID = $this->input->post("id");    //用户名    $memberName = $this->input->post("memberName");    //密码    $password = $this->input->post("password");    //真实姓名    $userRealName = $this->input->post("userRealName");    //性别    $sex = $this->input->post("sex");    //出生日期    $bornDay = $this->input->post("bornDay");    //e_mail    $eMail = $this->input->post("eMail");    //密码问题    $question = $this->input->post("question");    //密码答案    $answer = $this->input->post("answer");    //调用model    $this->load->model("train/MQuery","change");    //向model中的change传值    $result = $this->change->change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer);    //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是""    if ($result) {      $this->index();    } else {      echo "change failed.";    }  }}

models中的 mquery.php 文件

<?phpclass MQuery extends Model {  //构造函数  function MQuery() {    parent::Model();    //连接数据库    $this->load->database();  }  //查询列表  function queryList() {    //防止select出的数据存在乱码问题    //mysql_query("SET NAMES GBK");    //SQL语句    $sql = "SELECT ID,member_name,sex,e_mail FROM user_info_t";    //执行SQL    $rs = $this->db->query($sql);    //将查询结果放入到结果集中    $result = $rs->result();    //关闭数据库    $this->db->close();    //将结果集返回    return $result;  }  //新增  function addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) {    //防止select出的数据存在乱码问题    //mysql_query("SET NAMES GBK");    //SQL语句    $sql = "INSERT INTO user_info_t (member_name,password,user_real_name,sex,born_day,e_mail,question,answer) " .        "VALUES ("$memberName","$password","$userRealName","$sex","$bornDay","$eMail","$question","$answer")";    //执行SQL    $result = $this->db->query($sql);    //关闭数据库    $this->db->close();    //返回值    return $result;  }  //删除  function delRecord($deleteID) {    //防止select出的数据存在乱码问题    //mysql_query("SET NAMES GBK");    $sql = "DELETE FROM user_info_t WHERE ID = $deleteID";    $result = $this->db->query($sql);    $this->db->close();    return $result;  }  //修改前查询  function changeRecord($changeID) {    //防止select出的数据存在乱码问题    //mysql_query("SET NAMES GBK");    $sql = "SELECT ID,member_name,password,user_real_name,sex,born_day,e_mail,question,answer FROM user_info_t WHERE ID = $changeID";    //执行SQL    $rs = $this->db->query($sql);    $result = $rs->row();//$result = $rs[0]    //关闭数据库    $this->db->close();    //将结果集返回    return $result;  }  //修改  function change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) {    //防止select出的数据存在乱码问题    //mysql_query("SET NAMES GBK");    //SQL语句    $sql = "update user_info_t set member_name = "$memberName",password = "$password", user_real_name = "$userRealName"," .        "sex = "$sex",born_day = "$bornDay",e_mail = "$eMail",question = "$question",answer = "$answer"" .        "where ID = $ID";    //执行SQL    $result = $this->db->query($sql);    //关闭数据库    $this->db->close();    //返回值    return $result;  }}

views 下的 addPage.tpl文件

<html>  <head>  </head>  <body><form action="{{site_url url="train/cquery/add"}}" method="post">    <table border="1">      <tr>        <td>用户名</td>        <td><input type="text" class="text" name="memberName" id="memberName"/></td>      </tr>      <tr>        <td>密码</td>        <td><input type="text" class="text" name="password" id="password"/></td>      </tr>      <tr>        <td>真实姓名</td>        <td><input type="text" class="text" name="userRealName" id="userRealName"/></td>      </tr>      <tr>        <td>性别</td>        <td><input type="text" class="text" name="sex" id="sex"/></td>      </tr>      <tr>        <td>出生日期</td>        <td><input type="text" class="text" name="bornDay" id="bornDay"/></td>      </tr>      <tr>        <td>e_mail</td>        <td><input type="text" class="text" name="eMail" id="eMail"/></td>      </tr>      <tr>        <td>密码问题</td>        <td><input type="text" class="text" name="question" id="question"/></td>      </tr>      <tr>        <td>密码答案</td>        <td><input type="text" class="text" name="answer" id="answer"/></td>      </tr>    </table>    <table>      <tr>        <td><input type="submit" class="button" name="OK" value="提交" />        </td>      </tr>    </table></form>  </body></html>

changePage.tpl 文件

<html>  <head>  </head>  <body><form action="{{site_url url="train/cquery/change"}}" method="post">    <table border="1"><input type="hidden" name="id" value="{{$res->ID}}" />      <tr>        <td>用户名</td>        <td><input type="text" class="text" name="memberName" id="memberName" value="{{$res->member_name}}" /></td>      </tr>      <tr>        <td>密码</td>        <td><input type="text" class="text" name="password" id="password" value="{{$res->password}}" /></td>      </tr>      <tr>        <td>真实姓名</td>        <td><input type="text" class="text" name="userRealName" id="userRealName" value="{{$res->user_real_name}}"/></td>      </tr>      <tr>        <td>性别</td>        <td><input type="text" class="text" name="sex" id="sex" value="{{$res->sex}}"/></td>      </tr>      <tr>        <td>出生日期</td>        <td><input type="text" class="text" name="bornDay" id="bornDay" value="{{$res->born_day}}"/></td>      </tr>      <tr>        <td>e_mail</td>        <td><input type="text" class="text" name="eMail" id="eMail" value="{{$res->e_mail}}"/></td>      </tr>      <tr>        <td>密码问题</td>        <td><input type="text" class="text" name="question" id="question" value="{{$res->question}}"/></td>      </tr>      <tr>        <td>密码答案</td>        <td><input type="text" class="text" name="answer" id="answer" value="{{$res->answer}}"/></td>      </tr>    </table>    <table>      <tr>        <td><input type="submit" class="button" name="OK" value="提交" />        </td>      </tr>    </table></form>  </body></html>

vquery.tpl 文件

<html>  <head>    <title></title>  </head>  <body>    <table border="1">      <tr>        <td>用户名</td>        <td>性别</td>        <td>e_mail</td>        <td>操作</td>      </tr>      {{foreach from=$res item=row}}      <tr>        <input type="hidden" value={{$row->ID}}>        <td>{{$row->member_name}}</td>        <td>{{$row->sex}}</td>        <td>{{$row->e_mail}}</td>        <td><a href="{{site_url url="train/cquery/deletePage"}}/{{$row->ID}}" rel="external nofollow" >删除</a><a href="{{site_url url="train/cquery/changePage"}}/{{$row->ID}}" rel="external nofollow" >修改</a></td>      </tr>      {{/foreach}}    </table>    <a href="{{site_url url="train/cquery/addPage"}}" rel="external nofollow" rel="external nofollow" mce_href="{{site_url url="train/cquery/addPage"}}" rel="external nofollow" rel="external nofollow" >add</a>  </body></html>

更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《php优秀开发框架总结》、《ThinkPHP入门教程》、《ThinkPHP常用方法总结》、《Zend FrameWork框架入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。