当前位置:首页 > CMS教程 > 其它CMS > 列表

CI框架(CodeIgniter)实现的数据库增删改查操作总结

发布:smiling 来源: PHP粉丝网  添加日期:2021-09-17 19:18:18 浏览: 评论:0 

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

controllers下的 cquery.php文件

  1. <?php 
  2. class CQuery extends Controller { 
  3.   //构造函数 
  4.   function CQuery() { 
  5.     parent::Controller(); 
  6. //   $this->load->database(); 
  7.   } 
  8.   function index() { 
  9.     //调用model 其中train为外层文件夹  MQuery为model名称 queryList为重命名 
  10.     $this->load->model('train/MQuery','queryList'); 
  11.     //获得返回的结果集  这里确定调用model中的哪个方法 
  12.     $result = $this->queryList->queryList(); 
  13.     //将结果集赋给res 
  14.     $this->smarty->assign('res',$result); 
  15.     //跳转到显示页面 
  16.     $this->smarty->view('train/vquery.tpl'); 
  17.   } 
  18.   //进入新增页面 
  19.   function addPage() { 
  20.     $this->smarty->view('train/addPage.tpl'); 
  21.   } 
  22.   //新增 
  23.   function add() { 
  24.     //获得前台数据 
  25.     //用户名 
  26.     $memberName = $this->input->post('memberName'); 
  27.     //密码 
  28.     $password = $this->input->post('password'); 
  29.     //真实姓名 
  30.     $userRealName = $this->input->post('userRealName'); 
  31.     //性别 
  32.     $sex = $this->input->post('sex'); 
  33.     //出生日期 
  34.     $bornDay = $this->input->post('bornDay'); 
  35.     //e_mail 
  36.     $eMail = $this->input->post('eMail'); 
  37.     //密码问题 
  38.     $question = $this->input->post('question'); 
  39.     //密码答案 
  40.     $answer = $this->input->post('answer'); 
  41.     //调用model 
  42.     $this->load->model('train/MQuery','addRecord'); 
  43.     //向model中的addRecord传值 
  44.     $result = $this->addRecord->addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer); 
  45.     //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是"" 
  46.     if ($result) { 
  47.       $this->index(); 
  48.     } else { 
  49.       echo "add failed."
  50.     } 
  51.   } 
  52.   //删除 
  53.   function deletePage() { 
  54.     //获得ID 
  55.     $deleteID = $this->uri->segment(4); 
  56.     //调用model 
  57.     $this->load->model('train/MQuery','delRecord'); 
  58.     //将值传入到model的delRecord方法中 
  59.     $result = $this->delRecord->delRecord($deleteID); 
  60.     //判断返回值 
  61.     if ($result) { 
  62.       $this->index(); 
  63.     } else { 
  64.       echo "delect failed."
  65.     } 
  66.   } 
  67.   //修改先查询 
  68.   function changePage() { 
  69.     $changeID = $this->uri->segment(4); 
  70.     $this->load->model('train/MQuery','changeRecord'); 
  71.     $result = $this->changeRecord->changeRecord($changeID); 
  72.     //将结果集赋给res 
  73.     $this->smarty->assign('res',$result); 
  74.     //跳转到显示页面 
  75.     $this->smarty->view('train/changePage.tpl'); 
  76.   } 
  77.   //修改 
  78.   function change() { 
  79.     //获得前台数据 
  80.     //ID 
  81.     $ID = $this->input->post('id'); 
  82.     //用户名 
  83.     $memberName = $this->input->post('memberName'); 
  84.     //密码 
  85.     $password = $this->input->post('password'); 
  86.     //真实姓名 
  87.     $userRealName = $this->input->post('userRealName'); 
  88.     //性别 
  89.     $sex = $this->input->post('sex'); 
  90.     //出生日期 
  91.     $bornDay = $this->input->post('bornDay'); 
  92.     //e_mail 
  93.     $eMail = $this->input->post('eMail'); 
  94.     //密码问题 
  95.     $question = $this->input->post('question'); 
  96.     //密码答案 
  97.     $answer = $this->input->post('answer'); 
  98.     //调用model 
  99.     $this->load->model('train/MQuery','change'); 
  100.     //向model中的change传值 
  101.     $result = $this->change->change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer); 
  102.     //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是"" 
  103.     if ($result) { 
  104.       $this->index(); 
  105.     } else { 
  106.       echo "change failed."
  107.     } 
  108.   } 
  109. <?php 
  110. class CQuery extends Controller { 
  111.   //构造函数 
  112.   function CQuery() { 
  113.     parent::Controller(); 
  114. //   $this->load->database(); 
  115.   } 
  116.   function index() { 
  117.     //调用model 其中train为外层文件夹  MQuery为model名称 queryList为重命名 
  118.     $this->load->model('train/MQuery','queryList'); 
  119.     //获得返回的结果集  这里确定调用model中的哪个方法 
  120.     $result = $this->queryList->queryList(); 
  121.     //将结果集赋给res 
  122.     $this->smarty->assign('res',$result); 
  123.     //跳转到显示页面 
  124.     $this->smarty->view('train/vquery.tpl'); 
  125.   } 
  126.   //进入新增页面 
  127.   function addPage() { 
  128.     $this->smarty->view('train/addPage.tpl'); 
  129.   } 
  130.   //新增 
  131.   function add() { 
  132.     //获得前台数据 
  133.     //用户名 
  134.     $memberName = $this->input->post('memberName'); 
  135.     //密码 
  136.     $password = $this->input->post('password'); 
  137.     //真实姓名 
  138.     $userRealName = $this->input->post('userRealName'); 
  139.     //性别 
  140.     $sex = $this->input->post('sex'); 
  141.     //出生日期 
  142.     $bornDay = $this->input->post('bornDay'); 
  143.     //e_mail 
  144.     $eMail = $this->input->post('eMail'); 
  145.     //密码问题 
  146.     $question = $this->input->post('question'); 
  147.     //密码答案 
  148.     $answer = $this->input->post('answer'); 
  149.     //调用model 
  150.     $this->load->model('train/MQuery','addRecord'); 
  151.     //向model中的addRecord传值 
  152.     $result = $this->addRecord->addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer); 
  153.     //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是"" 
  154.     if ($result) { 
  155.       $this->index(); 
  156.     } else { 
  157.       echo "add failed."
  158.     } 
  159.   } 
  160.   //删除 
  161.   function deletePage() { 
  162.     //获得ID 
  163.     $deleteID = $this->uri->segment(4); 
  164.     //调用model 
  165.     $this->load->model('train/MQuery','delRecord'); 
  166.     //将值传入到model的delRecord方法中 
  167.     $result = $this->delRecord->delRecord($deleteID); 
  168.     //判断返回值 
  169.     if ($result) { 
  170.       $this->index(); 
  171.     } else { 
  172.       echo "delect failed."
  173.     } 
  174.   } 
  175.   //修改先查询 
  176.   function changePage() { 
  177.     $changeID = $this->uri->segment(4); 
  178.     $this->load->model('train/MQuery','changeRecord'); 
  179.     $result = $this->changeRecord->changeRecord($changeID); 
  180.     //将结果集赋给res 
  181.     $this->smarty->assign('res',$result); 
  182.     //跳转到显示页面 
  183.     $this->smarty->view('train/changePage.tpl'); 
  184.   } 
  185.   //修改 
  186.   function change() { 
  187.     //获得前台数据 
  188.     //ID 
  189.     $ID = $this->input->post('id'); 
  190.     //用户名 
  191.     $memberName = $this->input->post('memberName'); 
  192.     //密码 
  193.     $password = $this->input->post('password'); 
  194.     //真实姓名 
  195.     $userRealName = $this->input->post('userRealName'); 
  196.     //性别 
  197.     $sex = $this->input->post('sex'); 
  198.     //出生日期 
  199.     $bornDay = $this->input->post('bornDay'); 
  200.     //e_mail 
  201.     $eMail = $this->input->post('eMail'); 
  202.     //密码问题 
  203.     $question = $this->input->post('question'); 
  204.     //密码答案 
  205.     $answer = $this->input->post('answer'); 
  206.     //调用model 
  207.     $this->load->model('train/MQuery','change'); 
  208.     //向model中的change传值 
  209.     $result = $this->change->change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer); 
  210.     //判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是"" 
  211.     if ($result) { 
  212.       $this->index(); 
  213.     } else { 
  214.       echo "change failed."
  215.     } 
  216.   } 

models中的 mquery.php 文件

  1. <?php 
  2. class MQuery extends Model { 
  3.   //构造函数 
  4.   function MQuery() { 
  5.     parent::Model(); 
  6.     //连接数据库 
  7.     $this->load->database(); 
  8.   } 
  9.   //查询列表 
  10.   function queryList() { 
  11.     //防止select出的数据存在乱码问题 
  12.     //mysql_query("SET NAMES GBK"); 
  13.     //SQL语句 
  14.     $sql = "SELECT ID,member_name,sex,e_mail FROM user_info_t"
  15.     //执行SQL 
  16.     $rs = $this->db->query($sql); 
  17.     //将查询结果放入到结果集中 
  18.     $result = $rs->result(); 
  19.     //关闭数据库 
  20.     $this->db->close(); 
  21.     //将结果集返回 
  22.     return $result
  23.   } 
  24.   //新增 
  25.   function addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) { 
  26.     //防止select出的数据存在乱码问题 
  27.     //mysql_query("SET NAMES GBK"); 
  28.     //SQL语句 
  29.     $sql = "INSERT INTO user_info_t (member_name,password,user_real_name,sex,born_day,e_mail,question,answer) " . 
  30.         "VALUES ('$memberName','$password','$userRealName','$sex','$bornDay','$eMail','$question','$answer')"
  31.     //执行SQL 
  32.     $result = $this->db->query($sql); 
  33.     //关闭数据库 
  34.     $this->db->close(); 
  35.     //返回值 
  36.     return $result
  37.   } 
  38.   //删除 
  39.   function delRecord($deleteID) { 
  40.     //防止select出的数据存在乱码问题 
  41.     //mysql_query("SET NAMES GBK"); 
  42.     $sql = "DELETE FROM user_info_t WHERE ID = $deleteID"
  43.     $result = $this->db->query($sql); 
  44.     $this->db->close(); 
  45.     return $result
  46.   } 
  47.   //修改前查询 
  48.   function changeRecord($changeID) { 
  49.     //防止select出的数据存在乱码问题 
  50.     //mysql_query("SET NAMES GBK"); 
  51.     $sql = "SELECT ID,member_name,password,user_real_name,sex,born_day,e_mail,question,answer FROM user_info_t WHERE ID = $changeID"
  52.     //执行SQL 
  53.     $rs = $this->db->query($sql); 
  54.     $result = $rs->row();//$result = $rs[0] 
  55.     //关闭数据库 
  56.     $this->db->close(); 
  57.     //将结果集返回 
  58.     return $result
  59.   } 
  60.   //修改 
  61.   function change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) { 
  62.     //防止select出的数据存在乱码问题 
  63.     //mysql_query("SET NAMES GBK"); 
  64.     //SQL语句 
  65.     $sql = "update user_info_t set member_name = '$memberName',password = '$password', user_real_name = '$userRealName'," . 
  66.         "sex = '$sex',born_day = '$bornDay',e_mail = '$eMail',question = '$question',answer = '$answer'" . 
  67.         "where ID = $ID"
  68.     //执行SQL 
  69.     $result = $this->db->query($sql); 
  70.     //关闭数据库 
  71.     $this->db->close(); 
  72.     //返回值 
  73.     return $result
  74.   } 

views 下的 addPage.tpl文件

  1. <html> 
  2.   <head> 
  3.   </head> 
  4.   <body><form action="{{site_url url='train/cquery/add'}}" method="post"> 
  5.     <table border='1'> 
  6.       <tr> 
  7.         <td>用户名</td> 
  8.         <td><input type="text" class="text" name="memberName" id="memberName"/></td> 
  9.       </tr> 
  10.       <tr> 
  11.         <td>密码</td> 
  12.         <td><input type="text" class="text" name="password" id="password"/></td> 
  13.       </tr> 
  14.       <tr> 
  15.         <td>真实姓名</td> 
  16.         <td><input type="text" class="text" name="userRealName" id="userRealName"/></td> 
  17.       </tr> 
  18.       <tr> 
  19.         <td>性别</td> 
  20.         <td><input type="text" class="text" name="sex" id="sex"/></td> 
  21.       </tr> 
  22.       <tr> 
  23.         <td>出生日期</td> 
  24.         <td><input type="text" class="text" name="bornDay" id="bornDay"/></td> 
  25.       </tr> 
  26.       <tr> 
  27.         <td>e_mail</td> 
  28.         <td><input type="text" class="text" name="eMail" id="eMail"/></td> 
  29.       </tr> 
  30.       <tr> 
  31.         <td>密码问题</td> 
  32.         <td><input type="text" class="text" name="question" id="question"/></td> 
  33.       </tr> 
  34.       <tr> 
  35.         <td>密码答案</td> 
  36.         <td><input type="text" class="text" name="answer" id="answer"/></td> 
  37.       </tr> 
  38.     </table> 
  39.     <table> 
  40.       <tr> 
  41.         <td><input type="submit" class="button" name="OK" value="提交" /> 
  42.         </td> 
  43.       </tr> 
  44.     </table></form> 
  45.   </body> 
  46. </html> 

changePage.tpl 文件

  1. <html> 
  2.   <head> 
  3.   </head> 
  4.   <body><form action="{{site_url url='train/cquery/change'}}" method="post"> 
  5.     <table border='1'><input type="hidden" name="id" value="{{$res->ID}}" /> 
  6.       <tr> 
  7.         <td>用户名</td> 
  8.         <td><input type="text" class="text" name="memberName" id="memberName" value="{{$res->member_name}}" /></td> 
  9.       </tr> 
  10.       <tr> 
  11.         <td>密码</td> 
  12.         <td><input type="text" class="text" name="password" id="password" value="{{$res->password}}" /></td> 
  13.       </tr> 
  14.       <tr> 
  15.         <td>真实姓名</td> 
  16.         <td><input type="text" class="text" name="userRealName" id="userRealName" value="{{$res->user_real_name}}"/></td> 
  17.       </tr> 
  18.       <tr> 
  19.         <td>性别</td> 
  20.         <td><input type="text" class="text" name="sex" id="sex" value="{{$res->sex}}"/></td> 
  21.       </tr> 
  22.       <tr> 
  23.         <td>出生日期</td> 
  24.         <td><input type="text" class="text" name="bornDay" id="bornDay" value="{{$res->born_day}}"/></td> 
  25.       </tr> 
  26.       <tr> 
  27.         <td>e_mail</td> 
  28.         <td><input type="text" class="text" name="eMail" id="eMail" value="{{$res->e_mail}}"/></td> 
  29.       </tr> 
  30.       <tr> 
  31.         <td>密码问题</td> 
  32.         <td><input type="text" class="text" name="question" id="question" value="{{$res->question}}"/></td> 
  33.       </tr> 
  34.       <tr> 
  35.         <td>密码答案</td> 
  36.         <td><input type="text" class="text" name="answer" id="answer" value="{{$res->answer}}"/></td> 
  37.       </tr> 
  38.     </table> 
  39.     <table> 
  40.       <tr> 
  41.         <td><input type="submit" class="button" name="OK" value="提交" /> 
  42.         </td> 
  43.       </tr> 
  44.     </table></form> 
  45.   </body> 
  46. </html> 

vquery.tpl 文件

  1. <html> 
  2.   <head> 
  3.     <title></title> 
  4.   </head> 
  5.   <body> 
  6.     <table border='1'> 
  7.       <tr> 
  8.         <td>用户名</td> 
  9.         <td>性别</td> 
  10.         <td>e_mail</td> 
  11.         <td>操作</td> 
  12.       </tr> 
  13.       {{foreach from=$res item=row}} 
  14.       <tr> 
  15.         <input type="hidden" value={{$row->ID}}> 
  16.         <td>{{$row->member_name}}</td> 
  17.         <td>{{$row->sex}}</td> 
  18.         <td>{{$row->e_mail}}</td> 
  19.         <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> 
  20.       </tr> 
  21.       {{/foreach}} 
  22.     </table> 
  23.     <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> 
  24.   </body> 
  25. </html>

Tags: CodeIgniter CI增删改查

分享到: