테스트 사이트 - 개발 중인 베타 버전입니다

data/file 폴더에 파일이 없는 게시물를 삭제하려합니다. 채택완료

minsung 7년 전 조회 1,746

안녕하세요.

 

실제 게시물에서 파일이 존재하지 않는 경우만 삭제를 하려고합니다.

db상에는 있지만 data/file는 실제 파일이 없는것만요.

 

위와 반대의 경우의 팁은 있던데...

 

강제로 삭제를 시키려고 합니다..

댓글을 작성하려면 로그인이 필요합니다.

답변 1개

채택된 답변
+20 포인트
l
7년 전

</p>

<p>$sql = 'SELECT * FROM '.G5_TABLE_PREFIX.'board_file';</p>

<p>$res = sql_query($sql);</p>

<p>$bbs = '';</p>

<p>for($i=0; $row=sql_fetch_array($res); $i++) {</p>

<p>     if (!is_file(G5_DATA_PATH.'/file/'.$row['bo_table'].'/'.$row['bf_file'])) { </p>

<p>          unset($bbs);</p>

<p>          $sql2 = "SELECT wr_file FROM ".$g5['write_prefix'].$row['bo_table']." WHERE wr_id = ".$row['wr_id'];</p>

<p>          $bbs = sql_fetch($sql2);</p>

<p>          // 이 아래행은 한번 테스트 해보시고 실행하세요</p>

<p>          if (isset($bbs['wr_file']) && $bbs['wr_file'] > 1)</p>

<p>                sql_query("UPDATE ".$g5['write_prefix'].$row['bo_table']." SET wr_file = wr_file - 1 WHERE wr_id = ".$row['wr_id']);</p>

<p>          else</p>

<p>                sql_query("DELETE FROM ".$g5['write_prefix'].$row['bo_table']." WHERE wr_id = ".$row['wr_id']);</p>

<p>     }</p>

<p>}</p>

<p>

테스트 해 보지 않았으니 버그가 있을 수도 있습니다

조심히 사용하시길 권해 드립니다

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인