Détection du succès d'une requête de création, de mise à jour ou de suppression dans CodeIgniter
Lors de l'exécution d'opérations de base de données dans CodeIgniter, il est essentiel de vérifier leur succès. Ne pas le faire peut entraîner une incohérence des données ou l'affichage de résultats incorrects à l'utilisateur.
Approche incorrecte :
La méthode du contrôleur fournie suppose que tout retour non nul la valeur de la méthode de modèle update() indique le succès. Cependant, il ne s'agit pas d'une approche fiable puisque le modèle peut renvoyer des valeurs non nulles même lorsque la requête ne parvient pas à mettre à jour les lignes.
Approche correcte :
Pour correctement détecter le succès des opérations de base de données, il est recommandé d'utiliser ce qui suit étapes :
Contrôleur :
Modèle :
Exemple :
<code class="php">// Controller public function delete($user_id) { if ($this->input->server('REQUEST_METHOD') == 'POST') { $result = $this->Crm_user_model->delete($user_id); if ($result === false) { add_flash_message('alert', 'Failed to delete user'); } else if ($result == 0) { add_flash_message('info', 'User not found or already deleted'); } else { add_flash_message('info', 'User deleted successfully'); } } }</code>
<code class="php">// Model public function delete($user_id) { $this->db->delete('user_table', ['user_id' => $user_id]); return $this->db->affected_rows(); }</code>
Considérations supplémentaires :
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!