В insert_id (), получить последний идентификатор вставки в codeigniter, добавляется дополнительный 1 с идентификатором - PullRequest
0 голосов
/ 12 июня 2018

При использовании insert_id() для получения последнего идентификатора вставки с автоматическим приращением добавляется дополнительный 1 с каждым идентификатором при выполнении echo print($insert_id) при MODEL в CodeIgniter.

Например: Мой последний идентификатор автоинкремента в столбце базы данных равен 50 при выполнении echo ($insert_id);, показывая мне 501 в качестве последнего идентификатора приращения.Очень странно.Я не смог выяснить проблему, почему прибывает дополнительный 1.Любое предложение, пожалуйста, помогите мне.

Мой другой вопрос после получения идентификатора последней вставки, как получить файл ID to Контроллер в Codeigniter от МодальныйФайл .

Модальный

public function create($data = [])
{	 
   $this->db->insert($this->table,$data);
   $insert_id = $this->db->insert_id();
   echo print_r($insert_id);exit;
		  
   //return $insert_id ;
}

1 Ответ

0 голосов
/ 12 июня 2018

Надеюсь, это поможет вам:

Примечание : Используйте только echo для печати идентификатора вставки в вашей модели;и чтобы получить идентификатор в контроллере, просто верните $insert_id

Ваша модель должна быть такой:

public function create($data = [])
{   
   if (! empty($data))
   { 
     $this->db->insert($this->table,$data);
     $insert_id = $this->db->insert_id();
     return $insert_id;
   }
}

В вашем контроллере:

Примечание : убедитесь, что вы загрузили модель либо в автозагрузку, либо в контроллер

public function method_name()
{
  $data = ['your insert data in array'];
  $id = $this->model_name->create($data);
  echo $id;//you will get the id;
}
...