Schnäppchen

Kategorien

CakePHP: id eines neuen Eintrags ermitteln

Ich brauche in der Funktion add() im Controller sofort die Id des neuen Eintrags. Problem: die Id ist der AUTO_INCREMENT Primary Key der Datenbank-Tabelle und wurde gerade erst in $this->Xxx->save() von der Datenbank automatisch erzeugt. Wie bekomme nun heraus, welche Id mysql erzeugt hat?

Ich weiß nicht genau, ob die Mysql-Funktion LAST_INSERT_ID() dafür geeignet ist, in der Vergangenheit hat sie bei mir schon merkwürdige Ergebnisse zurück geliefert, wenn gleichzeitig viele neue Einträge geschrieben wurden. Aber es gibt eine CakePHP-Lösung, die hoffentlich auch auf stark frequentierten Servern sicher funktioniert. Die Funktion save() setzt die Variable id automatisch auf den gültigen Wert:

$this->Xxx->save($this->data);
$xxx_id = $this->Xxx->id;

Hinterlassen Sie eine Antwort

 

 

 

Sie können diese HTML Tags verwenden

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

eMail-Benachrichtigung bei weiteren Kommentaren.
Auch möglich: Abo ohne Kommentar.