jestem po prostu staramy się najnowszy auto wygenerowany klucz z tabeli mysql z codeiginitor. Ale nie działa w jaki sposób. Próbowałem ten kod
$this->db->insert_id()
jak również
$this->db->mysql_insert_id()
otrzymuję następujący błąd
Severity: Notice
Message: Undefined property: CI_DB_mysql_driver::$insert_id
jest funkcja insert_id nie obsługiwane dla mysql? Jak możemy to sprawić?
Odpowiedz
Jest to kod Próbowałem wstawić dane i uzyskać identyfikator insert,
$this->db->insert('table_name',$data); $id = $this->db->mysql_insert_id();
To nie działa dla mnie. Użyłem DB Driver jako "mysql". Następnie zainstalowałem "mysqli" i zmieniłem nazwę sterownika DB w database.php jak,
$db['default']['dbdriver'] = 'mysqli';
Teraz to działa dobrze dla mnie.
$ this-> db-> insert (nazwa_tabeli, dane $); return $ this-> db-> insert_id(); –
CodeIgniter's insert_id()
zwróci tylko identyfikator insert()
. Chyba że wykonując coś takiego $this->db->insert('table', $data);
przed wywołaniem funkcji nie będzie w stanie powrócić identyfikator.
Mam to działa z następującymi zmianami.
1. Zmieniłem dbdriver w config.php z mysql do mysqli
2. Za pomocą następującego kodu
$this->db->mysql_insert_id();
–
oczywiście id wstawiania mówimy jest po wstawić niektóre wartości za pomocą instrukcji insert. –
Nigdy nie pisałeś kodu, więc nie byłam pewna, czy używasz Active Record 'insert()'. –
zakładając używasz Active Record wzór to powinno działać
$this->db->insert_id()
używać tej składni
$last_id = $this->db->insert_id();
return $last_id;
Miałem ten sam problem i znaleźć problem z tego linku: http://kedyr.wordpress.com/2012/10/03/codeigniter-insert_id/
rozwiązaniem nie jest właściwie rozwiązanie, bo to jest po prostu sposobem na poruszanie się za pomocą języka SQL, z CodeIgniter metody „Query "i radzenie sobie z natywnym wywołaniem sql.
$this->db->insert('references', $data);
$query = $this->db->query('SELECT LAST_INSERT_ID()');
$row = $query->row_array();
$LastIdInserted = $row['LAST_INSERT_ID()'];
W środowisku wielu użytkowników to rozwiązanie jest bałaganem! – meYnot
spróbuj tego:
$id = $this->db->insert_id()
zamiast
$id = $this->db->mysql_insert_id();
Proszę sprawdzić, czy tabela nie mają automatycznego przyrostu, pole podstawowy następnie $this->db->insert_id();
nie zwraca niczego.
W moim przypadku ta metoda pomogła mi rozwiązać problem. –
Dziękuję Vignesh :) –
Spróbuj
$this->db->insert('table_name',$data);
$id = $this->db->mysql_insert_id();
Twój kod będzie działać, jeśli masz kod jak poniżej:
var $table = 'your table name'
$this->db->insert($this->table,$data1);
return $this->db->insert_id();
CodeIgniter za insert_id() zwróci jedynie identyfikator wkładki(), jako wspomnienie przed , a także nie zapomnij ustawieniach nazwę sterownika dB database.php jak
$db['default']['dbdriver'] = 'mysqli';
- 1. CodeIgniter MySQL kwerenda nie działa
- 2. Rewriterule dla CodeIgniter nie działa
- 3. CodeIgniter: Spróbuj Catch nie działa w klasie modelu
- 4. Codeigniter, routing nie działa na serwerze produkcyjnym
- 5. Załadowanie pliku AJAX CodeIgniter nie działa
- 6. MECZ MySQL NIE DZIAŁA
- 7. Nie działa sterownik bazy danych kodu PDI CodeIgniter
- 8. Uzyskiwanie dodatkowych spacji w CodeIgniter zapytania MySQL
- 9. Ukończenie zakładki MySQL nie działa
- 10. python mysql DELETE nie działa
- 11. Dziennik zapytań MySQL nie działa
- 12. Dlaczego GRANT nie działa w MySQL?
- 13. Cofanie zmian nie działa w MySQL
- 14. Aktualizacja oświadczenie w procedurze mysql nie działa
- 15. CodeIgniter - MySQL przyłączyć gdy nie istnieją żadne wiersze secound tabeli
- 16. Codeigniter REST CSV import do mysql
- 17. codeigniter sess_destroy() nie działa poprawnie, co robię źle?
- 18. Pola listy CodeIgniter
- 19. index.php nie usuwa https CodeIgniter
- 20. CodeIgniter nie zalogowaniu
- 21. W jaki sposób pobieranie ostatniego identyfikatora insertów mysql działa z transakcjami? + Pytania transakcyjne
- 22. Jak wyłączyć błędy mysql z wyświetlania na ekranie w CodeIgniter
- 23. Używanie natywnej funkcji MySQL w aktywnych rekordach (codeigniter)
- 24. Ciąg połączenia nie działa z MySQL
- 25. Licznik sprzężenia zwrotnego MySQL Nie działa
- 26. CodeIgniter: Nie znaleziono klasy "CI_Controller"
- 27. MySQL 05.05.30 kaskadowo wyzwalacze nie działa
- 28. MySQL 5.5 na Lion nie działa
- 29. Compoundjs nie działa z jugglingdb-mysql
- 30. MySQL kwerenda nie działa z NOT IN
Ma normalną [mysql_insert_id()] (http://ro.php.net/manual/de/function.mysql-insert-id.php) pracuje dla ciebie? – sqwk
Pomoże to sprawdzić, gdzie masz uruchomione zapytanie przed tym. –
@sqwk Jestem w stanie uzyskać Insert id na normalnym PHP tylko po zainstalowaniu MySQLi. Zakładam, że mysql_insert_id będzie działał tylko z MySQLi. Zastanawiam się, w jaki sposób możemy uczynić CodeIgnitor do korzystania z MySQLi –