2015-08-04 7 views
-1

Я использую CodeIgniter Framefork, и я вставляю данные в базу данных, и следующий, который я хочу сделать, это взять из таблицы значение Id. Я просто вставляю с помощью mysql_insert_id(); и вставляю это значение Id в другую таблицу. Мой код в контроллереКак отправить переменную из одной функции в другую?

public function insert_data_to_db(){ 



    $form_data_book_name['BookName'] = $this->input->post('BookName'); 


      $this->book_model->insert_books_to_db($form_data_book_name); 


      } 

** И моя функция Model **

public function insert_books_to_db($form_data_book_name){ 
     $b = $this->db->insert('book',$form_data_book_name); 
     $id = mysql_insert_id(); 


     return $b; 
    } 

Итак, вопрос в том, как я могу принять это $id из function insert_books_to_db и вставить его в другую функцию, как это :

public function insert_id($id){ 
$result = $this->db->insert('table_with_id',$id); 
return $result; 
} 

ow recive this $ id в моем контроллере, а затем снова передайте его моде el function insert_id()?

+0

Ahem, 'return $ id;'? –

ответ

0

Просто верните массив, содержащий книгу и идентификатор, доступ на уровне контроллера, как и любой другой массив.

public function insert_data_to_db(){ 
    $form_data_book_name['BookName'] = $this->input->post('BookName'); 
    $data = $this->book_model->insert_books_to_db($form_data_book_name); 
    echo $data['Id']; 
    print_r($data); 
} 
public function insert_books_to_db($form_data_book_name){ 
    $b = $this->db->insert('book',$form_data_book_name); 
    $output=array(); 
    $output['Id']= mysql_insert_id(); 
    $output['book']=$b; 
    return $output; 
} 
Смежные вопросы