0
저는 CI와 PHP를 처음 사용했습니다.롤백 PHP - CodeIgniter
나는 파일 업로드를 포함하여 회사와 그 담당자를 서버에 추가하는 양식이 있습니다.
버튼 클릭 한번으로 모든 것이 필요합니다.
그렇게
function create_company()
{
$insert = $this->database->insert();
return $insert["insertID"]; //returns the inserted ID
}
function file_upload()
{
//upload files if there are some file input selected
return $array_of_uploaded_files;
}
function insert_contacts($company_id,$contacts_array)
{
//return true if everything success
}
내 문제가
- 먼저 회사 삽입 성공이다, 그러나 그것의 연락처를 추가하는 데 실패, 그럼 내가 현재 삽입 된 항목을 삭제해야
- 하는 경우 insert_contact failed 업로드 된 파일을 삭제해야합니다.
하나 이상의 종속성이 실패한 경우 작업을 롤백 할 수있는 방법이 있습니까?
Codeignitor에서 트랜잭션을 알고 있지만 어떻게 [여러 함수 범위로] 사용할 수 있습니까?
파일 업로드는 어떻게됩니까?
내가 php에 익숙하기 때문에 나는이 질문을하고있다. 내가 할 수있는 일은 그렇게 많은 함수를 만들고 적절한 상황에 부르는 것이다.
난 그냥
감사합니다 ... 어떻게 개선하거나 내 코드를 단순화 할 수 있음을 알고 싶어요.
덕분에 ... 난 트랜잭션이 하나 개의 기능에 일어난에서 확인합니다 다른 기능이 가능한가요? currenty 나는 성공/실패한 작업에 대한 레코드를 가지고 ... 그리고 파일 업로드는 어떨까요? 모든 단서 ... :) – Red
물론, $ this-> db는 단수이며 모든 모델과 컨트롤러에서 사용할 수 있습니다. 따라서 컨트롤러에서 db-> transaction()을 시작하고 모델에서 오류가 발생하면 trans_end()를 호출하지 마십시오. –
죄송합니다 실수로 downvoted, 내가 못하게 해줘! – exussum