>  기사  >  백엔드 개발  >  CodeIgniter에서 성공적인 데이터베이스 쿼리 실행을 확인하는 방법은 무엇입니까?

CodeIgniter에서 성공적인 데이터베이스 쿼리 실행을 확인하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-10-30 17:49:31313검색

How to Verify Successful Database Query Execution in CodeIgniter?

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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.