Fondamentalement, ce que vous recherchez pourrait être ceci INSERT ... ON DUPLICATE KEY UPDATE
- à condition que vous utilisiez MySQL et que votre identifiant soit une clé unique sur la table.
Vous devrez construire manuellement la requête et passer au $this->db->query()
fonction au lieu de tout enregistrement actif intégré comme les fonctions d'assistance du pilote de base de données.
Exemple :
$sql = 'INSERT INTO menu_sub (id, name, desc, misc)
VALUES (?, ?, ?, ?)
ON DUPLICATE KEY UPDATE
name=VALUES(name),
desc=VALUES(desc),
misc=VALUES(misc)';
$query = $this->db->query($sql, array( $id,
$this->validation->name,
$this->validation->desc,
$this->validation->misc
));