unlink 파일삭제문의
본문
서버파일을 unlink를 통해 삭제하려고 합니다.
www/data/file 폴더 밑에 파일이 있는것은 echo를 통해 확인했습니다.
unlink를 코드를 실행하면 500에러가 뜨며, unlink 코드를 가리면 제대로 실행됩니다.
(단, 서버에 파일삭제가 안됨)
퍼미션 문제인것 같아 G5_FILE_PERMISSION 대신 0755, 0777 입력해보았는데 동일한 500오류가 발생합니다.
어떤 문제일까요?
while($row = sql_fetch_array($result)){
$base_directory = G5_DATA_PATH."/file/";
$destfile = $base_directory.$row['file_name'];
$destfile = trim($destfile);
echo "DEST => ".$destfile;
// echo G5_FILE_PERMISSION;
@chmod($destfile, 0777);
if(@unlink($destfile)){
echo "Success.";
}else{
echo "Fail."
}
}
답변 3
간단하게 @unlink() 함수가 조건문에 안먹히는거 아닌가요?
즉 @를 사용해서 그럴지도 모르겠군요.
<?php
$file = "test.txt";
if (unlink($file)) {
echo ("삭제완료 $file");
} else {
echo ("삭제실패 $file");
}
// $res 변수에 반환여부를 넣는방식으로도 해보세요.
$file = "test.txt";
$res = @unlink($file);
if ($res == true) {
echo ("삭제완료 $file");
} else {
echo ("삭제실패 $file");
}
?>
에러로그를 일단 푸세요 common.php에서 로그를 전부다 볼수있게 푸시고 (나중에 다시 원래대로 되돌리면되요)
그러고 에러내용을 확인후에 방법을 알려드릴수있어요
답변을 작성하시기 전에 로그인 해주세요.