2016-09-28 3 views
0

이것은 테이블 이름이 borrow_user이고 NOW() 인 데이터베이스에 데이터를 삽입하기위한 배열로, borrow_user 테이블의 avt_date 필드 이름에 사용됩니다.codeigniter에서 모델 인수에 대해 NOW() 함수를 배열에 전달할 수 있습니까?

코드 서명자에서 NOW() 함수를 배열의 모델 인수로 전달할 수 있습니까?

$data = array(
        'user_name'=>$name,user_name is a field name in table 



      'user_father_name'=>$this->input->post('father_name'),//user_father is a field name in table 


      'user_dob'=>$this->input->post('DOB'), //user_dob is a field name in table 


      'user_email'=>$this->input->post('email'), // user_email is a field name in table 


      'user_pass'=>md5($pass), //user_pass is a field name in table 



      'user_address'=>$this->input->post('address'), 



      'phn'=>$this->input->post('phn'), 


      'user_type'=>2, 

      'avt_date'=>NOW()); //now() function is not working given an error . 



     $this->load->model('login_user'); 


     $regis_id=$this->login_user->regis_b($data); 
     //model class code  

public function regis_b($data) 
{ 

    $arr=array('user_email'=>$data['user_email']); 


    $this->db->insert('borrow_user', $data); 


    $sel_id=$this->db->select('id') 
         ->from('borrow_user') 
          ->where($arr) 
          ->get(); 


    if($sel_id->num_rows()) 
    { 


     return $sel_id->row()->id; 


    }else{ 


     return FALSE; 
    } 


} 
+0

무엇이 오류입니까? –

답변

0

이와 같은 활성 레코드 삽입 기능을 통해 SQL 함수를 전달할 수 없습니다.

하지만이 같은 결과를 얻을 수있는 두 가지 방법이 있습니다 :

'avt_date'=>date('Y-m-d H:i:s') 

2. 그것은 바로 삽입 문

전에 PHP에서

1 세트 타임 스탬프는

$ 데이터 배열에서 avt_date를 제거해야합니다. Insert는 하나의 전체 쿼리를 만들기 위해 전달 된 데이터와 함께 이전의 set 문을 그룹화합니다.

$this->db->set('avt_date', 'NOW()', FALSE); 
$this->db->insert('borrow_user', $data); 
+0

귀하의 기여에 대해 @ Gavin에게 감사드립니다. 내 대답을 얻었습니다. –

관련 문제