2012-09-15 4 views
0

이제 codeigniter를 사용하며 확인란 값에 따라 레코드를 추가하거나 삭제하려고합니다.같은 양식으로 이메일을 추가하거나 삭제하는 방법은 무엇입니까?

'보내기 0'을 누른 다음 삭제하거나 '보내기'값을 추가하는 경우와 같습니다.
이 작업을 수행하는 방법은 무엇입니까?

<!-- Mail Menu Start --> 
    <div class="block"> 
     <div class="titleSmal"><img src="<?= base_url(); ?>global/site/images/mailMenu.png" alt="" /></div> 
     <div class="content"> 
      <form action="<?= base_url(); ?>mailinglist/send" method="post"> 
       <fieldset class="form vote"> 
        <legend>&nbsp;</legend> 
        <input id="e-mail" class="textBox med" name="ML_Email" value="<?= set_value('ML_Email')?>" /><span class="correct">accepted..</span><br /> 

        <input id="subscription" type="radio" name="status" value="1" /><label for="answer1" class="label">subscription</label> 
        <input id="unsubscribe" type="radio" name="status" value="0" /><label for="answer2" class="label">unsubscribe</label><br /> 
       </fieldset> 
       <input id="submit" type="submit" value="submit" class="button sml" /> 
      </form> 
     </div> 
    </div><!-- Mail Menu End --> 

컨트롤러 기능

function send() { 
     $this->form_validation->set_error_delimiters("<span class='incorrect'>", "</span>"); 
     $this->form_validation->set_rules('ML_Email', 'البريد الالكتروني', 'trim|required|xss_clean|valid_email'); 
     if ($this->form_validation->run() == false) { 
      $this->view('site/sending_error'); 
     } else { 
      if($this->input->post('status')==1) 
      $this->mailinglist->send(); 
      echo $this->db->last_query(); 
      exit; 
      $this->view('theme/msg', $data); 
     } 
    } 

} 

모델 함수

function send() 
{ 
    $this->db->set('ML_Email', $this->input->post('ML_Email')); 
    $this->db->set('status', $this->input->post('status')); 
    $this->db->set('ML_Date', date("l jS \o\F\ F Y H:i:s a")); 
    $this->db->insert('d_mailinglist'); 
    return TRUE; 
} 

답변

0

상태 1 (삽입) 또는 0 경우 (삭제)

컨트롤러 인 경우 만 체크

function send() { 

    $this->form_validation->set_error_delimiters("<span class='incorrect'>", "</span>"); 
    $this->form_validation->set_rules('ML_Email', 'البريد الالكتروني', 'trim|required|xss_clean|valid_email'); 

    if ($this->form_validation->run() == false) 
    { 
     $this->view('site/sending_error'); 
    } 
    else 
    { 
     $this->mailinglist->send($this->input->post('status')); 
     $this->view('theme/msg', $data); 
    } 
} 

모델

function send($status = null) 
{ 
    if(! $status) 
    { 
     $this->db->where('ML_Email', $this->input->post('ML_Email')); 
     return $this->db->delete('d_mailinglist'); 
    } 
    else 
    { 
     $this->db->set('ML_Email', $this->input->post('ML_Email')); 
     $this->db->set('status', $this->input->post('status')); 
     $this->db->set('ML_Date', date("l jS \o\F\ F Y H:i:s a")); 
     return $this->db->insert('d_mailinglist'); 
    } 

} 
관련 문제