mar 11

Ostatnio miałem mały problem, wykonywałem w modelu danych instrukcję insert

$this->insert($dane);

i potrzebowałem ostatnie ID z bazy. Normalnie w MySql zawsze używałem do tego celu mysql_insert_id(); jednak tutaj to nie zadziałało. Poszukałem po necie i rozwiązanie okazało się równie proste i banalne jak sama instrukcja, wystarczyło po tej instrukcji insertu wydać kolejną komendę:

$lii = $this->getAdapter()->lastInsertId();

No i zadziałało :)

Autor siema \\ tagi: , , , ,



2 Odpowiedzi do “odczyt last_insert_id w modelu danych”

  1. Vexator napisał(a):

    a nie prościej zrobić tak:
    $new = $this->fetchNew();
    $new->nazwa_kolumny_1 = ‘jakieś dane”;
    $new->nazwa_kolejnej_kolumny = $dane;
    $new->save();

    wtedy możemy sobie zrobić

    $id = $new->id;

  2. Michał napisał(a):

    nie fetachNew() tylko createRow() :)
    http://zendframework.com/manual/1.0/fr/zend.db.table.row.html