CodeIgniter でのクエリ実行の成功の検証
CodeIgniter では、データベース クエリが正常に実行されたかどうかを検証することは、データベース操作を効果的に処理するために重要です。
コントローラー ロジック
元のコントローラー メソッドは、$user_id に基づいてユーザーの削除を処理します。ただし、クエリの成功は正しく検証されません。
改訂されたコントローラー メソッドでは、セキュリティ上の理由から $_POST を使用してユーザー ID を受け取ることができます。また、より簡潔な条件ブロックを使用して更新の成功を確認します。
public function softDeleteUser(): void { $userId = $this->input->post('user_id'); if ($userId) { $affectedRows = $this->Crm_user_model->update($userId, ['deleted' => true]); if ($affectedRows > 0) { add_flash_message('info', 'Soft deleted user'); } else { add_flash_message('alert', 'Failed to soft delete user'); } } else { add_flash_message('alert', 'Required data not supplied'); } }
モデルの考慮事項
モデルはクエリの実行と結果の検証を担当する必要があります。 。この場合、update() メソッドは、クエリによって影響を受けた行があるかどうかを確認します。
public function update(int $userId, array $newData): int { // Restrict user_id modification unset($newData['user_id']); $this->db->update('user_tablename', $newData, ['user_id' => $userId]); $affectedRows = $this->db->affected_rows(); if ($affectedRows) { // Optional: Log user change } return $affectedRows; }
このアプローチにより、コントローラーは、クエリによって返された影響を受けた行数を確認することで、更新が成功したかどうかを判断できるようになります。モデル。構文エラーや空のクエリ結果はすぐに分かり、ユーザーへの正確なフィードバックが保証されます。
以上がCodeIgniter でデータベース クエリの実行が成功したことを確認する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。