iT邦幫忙

3

[鐵鷹練成]CI之公佈欄(資料修改)

  • 分享至 

  • xImage
  •  

今天直奔主題 用code講話
controllers/news.php
增加兩個方法

   //把資料抓取載入到ModifyNews頁面
    function ModifyNews($id){
        $array = array('id'=>$id);
        $data['query'] = $this->sql->where_array($array,'news');
        $this->load->view('ModifyNews',$data);
    }

   
    //修改
    //抓取POST['id']元素 去比對資料庫欄位 更新所有欄位
    function NewsModify(){
        $id = $this->input->post('id');
        $where = array('id'=>$id);
        $array = $this->input->post();
        $this->sql->set_modify($where,$array,'news');
        redirect(site_url().'news/index');
    }
   

views/news
在昨天刪除按鈕的另一個按鈕加入連結

....
<td><div align="center">
<a href="<?=$link;?>index1.php/news/ModifyNews/<?=$row['id'];?>"><button class="btn" type="button">修改</button></a>
<a href="<?=$link;?>index1.php/news/DelNews/<?=$row['id'];?>"><button class="btn" type="button" onclick="if(confirm('您確定刪除<?=$row['title'];?>嗎?')) return true;else return false">刪除</button></a>
</div></td>
....

views/ModifyNews
新增頁面

<?php
/*---------------------------------------*/
//........ 此頁面請放在view資料夾底下.......//
/*---------------------------------------*/
$link = 'http://localhost/test/';
?>

<html xmlns="http://www.w3.org/1999/xhtml">

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>公佈欄</title>
<!--以下是 Bootstrap 的文件包-->
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link href="<?=$link;?>css/bootstrap-responsive.min.css" rel="stylesheet">
<link href="<?=$link;?>css/bootstrap.min.css" rel="stylesheet" media="screen">
<script src="<?=$link;?>js/jquery.js"></script>
<script src="<?=$link;?>js/bootstrap.min.js"></script>
<style>
#heig{
     height:10px;
}
#color{
     background-color: #E5E5E5;
}
</style>


<!--"container"為固定置中,請參考 http://kkbruce.tw/Bootstrap/Scaffolding 佈局篇-->
<div class="container">
<!--class="table table-bordered table-condensed"請參考 http://kkbruce.tw/Bootstrap/BaseCSS#tables -->
<?php /**  index1.php/news/NewsAdd  請參考  http://www.codeigniter.org.tw/user_guide/general/urls.html **/ ?>
<form id="form1" name="form1" method="post" action="<?=$link;?>index1.php/news/NewsModify">
<?php foreach($query->result_array() as $row):?>
  <table width="1200" border="0" class="table table-bordered table-condensed">
    <tr>
      <td id="color"><strong>>>>修改公告</strong></td>
    </tr>
    <tr>
      <td><div align="center">
        <!-- placeholder="標題" 請參考 http://kkbruce.tw/Bootstrap/BaseCSS#forms -->
        <input name="title" type="text" id="title" value="<?=$row['title'];?>" placeholder="標題"/>
        <input name="id" type="hidden" id="id" value="<?=$row['id'];?>" />
      </div>
        <label>
        <div align="center"></div>
        </label></td>
    </tr>
    <tr>
      <td id="color"><div align="center"><strong>內容</strong></div></td>
    </tr>
    <tr>
      <td><div align="center">
        <textarea name="content"  cols="45" rows="5" id="content"><?=$row['content'];?>
        </textarea>
      </div></td>
    </tr>
    <tr>
      <td id="color"><!-- class="btn-group" 請參考 http://kkbruce.tw/Bootstrap/Components#buttonGroups   -->
        <div class="btn-group">
          <button class="btn" type="submit">修改公告</button>
          <button class="btn" type="reset">重新填寫</button>
          <button class="btn" type="button" onClick="window.location='<?=$link;?>index1.php/news/index'">回公佈欄</button>
        </div></td>
    </tr>
  </table>
  <?php endforeach;?>
</form>
</div>

models/sql.php

    /* set 是寫入資料
     * set - $this->db->set('欄位','值');
     * set - $this->db->set(array);
     * update 是更新
     * $this->db->update('資料表',post[全部]) 類似 insert
     */    
    function set_modify($where,$array,$table){
        $this->db->where($where)->set($array)->update($table);
    }

使用圖



待續


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 則留言

0
freelab
iT邦新手 1 級 ‧ 2013-09-28 23:40:25

沙發

謝謝

0
fillano
iT邦超人 1 級 ‧ 2013-09-29 14:39:20

讚喜歡

謝謝

我要留言

立即登入留言