2015-06-09 75 views
0

我需要将表中的表内容从user_openletter复制到table:country,然后单击归档按钮。如何编写一个查询,以从user_openletter复制到,标题,openletter,open_id到另一个表格国家。这是一个codeigniter应用程序。将数据库内容从一个表复制到codeigniter中的另一个表

我的控制器代码:

public function store_user_data_archieve()  
{ 
    $match = $this->input->post('submit'); 
    echo $match; 
    if($match == "Archieve") 
    { 
     $data = array(
     'open_id' => $this->input->post('open_id'), 
     'featured' => '1', 
     'from' => $this->input->post('from'), 
      'to' => $this->input->post('to'), 
      'title' => $this->input->post('title'), 

      'archieve' => '1', 
      'latest' => '0', 
      'sponsor' => 'images/sponsor.png' 

      ); 
     $this->load->database(); 
     //load the model 
     $this->load->model('select'); 
     //load the method of model 
     $data['r']=$this->select->store_user_data_archieve($data); 
     echo "success"; 
     } 
     else if(!$match == "new") 
     { 
      $data = array(
     'open_id' => $this->input->post('open_id'), 
     'featured' => '1', 
     'from' => $this->input->post('from'), 
      'to' => $this->input->post('to'), 
      'title' => $this->input->post('title'), 
      'openletter' => $this->input->post('openletter'), 
      'archieve' => '0', 
      'latest' => '1', 
      'sponsor' => 'images/sponsor.png' 

      ); 
     $this->load->database(); 
     //load the model 
     $this->load->model('select'); 
     //load the method of model 
     $data['r']=$this->select->store_user_data_archieve($data); 
     echo "success"; 

     } 
      else if(!$match == "Discard") 
     { 

     echo "failure"; 

     } 

     } 

我的看法代码:

<?php 
     foreach ($r->result() as $row) 
     { 
     ?> 

       <table border="1" cellpadding="4" cellspacing="0"> 
       <tr> 
        <td>from</td> 
        <td>to</td> 
        <td>title</td> 
        <td>openletter</td> 
        <td>Date & Time</td> 
        <td>open_id</td> 
       </tr> 

        <tr> 
       <form action="/index.php/welcome/store_user_data_archieve" method="post"> 
         <td><input type="text" name="from" value="<?php echo $row->from;?>" /></td> 
        <td><input type="text" name="to" value="<?php echo $row->to;?>" /></td> 
        <td><input type="text" name="title" value="<?php echo $row->title;?>" /></td> 
        <td><input type="text" name="openletter" value="<?php echo $row->openletter;?>" /></td> 
        <td><input type="text" name="datetime" value="<?php echo $row->datetime;?>" /></td> 
        <td><input type="text" name="open_id" value="<?php echo $row->open_id;?>" /></td> 
        <td><div><input type="submit" name="submit" value="Archieve" /></div></td> 
        <td><div><input type="submit" name="new" value="new" /></div></td> 

       </form> 
       </tr> 
       </table> 

     <?php } ?> 

我的模型代码是:

public function store_user_data_archieve($data) 
{ 
//data is retrieved from this query 
$this->db->insert('country', $data); 
$this->db->set('openletter');  
$this->db->select('openletter'); 
$this->db->where('open_id', $data[open_id]); 
$this->db->from('user_openletter'); 

// Produces: INSERT INTO mytable (title, name, date) VALUES ('{$title}', '{$name}', '{$date}') 
} 
+0

那么你的问题是什么? – Saty

+0

我觉得我的型号代码有问题 – shank

+0

你想要什么?从哪个表复制到哪个表? – Saty

回答

0

根据我们的讨论,你需要从复制from,to,title,openletter,open_iduser_openlettercountry table

$this->db->select('from,to,title,openletter,open_id');// select your filed 
$q = $this->db->get('user_openletter')->result(); // get result from table 
foreach ($q as $r) { // loop over results 
     $this->db->insert('country', $r); // insert each row to country table 
    } 
+0

我收到此错误 - 此网页不可用 ERR_CONTENT_DECODING_FAILED – shank

相关问题