관리자가 어떤 회원의 아이디로 작성한 글들을 다 지우려면
본문
관리자한테 abc라는 아이디를 사용하는 회원이 작성한 글들을 다 지워달라는 요청이 들어오면 보통 어떤 방식으로 삭제할까요? 사이트 서버에 abc 아이디를 사용하는 계정을 찾아서 그 계정이 작성한 글들을 지우는지.. 아니면 그냥 게시판에서 그 아이디로 검색해서 글들을 지우는지.. 궁금하네요..! 보통 어떤 방식으로 삭제하나요?
답변 3
방법은 많겠지만 SQL로 지우는게 간편합니다.
단순한 구조의 경우 SQL 처리가 간편합니다.
다만 프로그램 로직상에서 이테이블 저테이블 논리적으로 데이터가 엮여 있는 상태면
그부분을 다 파악한다음에 진행이 되어야 합니다.
그래서 데이터 연관관계가 파악되지 않은 상태라면
직접 지우지 말고 페이지에서 제공하는 UI 로 조작해야 합니다.
게시글에 첨부화일이 있으면 원본 이미지, 썸네일 이미지 등을 삭제해야하고 탈퇴한 회원이 쓴 댓글,
삭제할 게시물에 달린 댓글 등이 있는지 없는지 등등 고려해야할 사항이 많습니다
delete_all.php를 이용하여 삭제 화일을 만들면 비교적 쉽게 가능 합니다
php사용이 익숙하다면 중간쯤에서 (윗부분 코드 삭제 후)
$sql = " select wr_id, mb_id, wr_is_comment, wr_content from $write_table where wr_parent = '{$write['wr_id']}' order by wr_id ";
==> 수정
$result = sql_query(" select bo_table from {$g5['board_table']} ");
while($row=sql_fetch_array($result)){
$write_table = $g5['write_prefix'].$row['bo_table'];
$sql = " select wr_id, mb_id, wr_is_comment, wr_content from $write_table where mb_id ='삭제할아이디' ";
위와 같은 삭제 화일을 만들어 삭제 하면 되는데 php와 그누보드 구조에 대한 지식이 있어야겠습니다