php, CRUD 글 삭제 (feat. unlink 함수)

포스트 썸네일 이미지

이번에는 CRUD 기능의 마지막 퍼즐인 글 삭제(Delete) 기능을 구현해 보겠다.

서버에 저장된 파일을 물리적으로 제거하는 unlink() 함수의 사용법도 함께 알아보자.




이전 포스트




글 삭제


CRUD 중에서 Delete, 삭제 기능이 가장 간단한 편이다.

만드는 것은 어렵지만 부수는 것은 쉽다는 점은 프로그래밍에서도 마찬가지인 듯하다.





<?php if(isset($_GET['id'])) { ?>
    <a href="update.php?id=<?=$_GET['id']?>">update</a>
    <form action="delete_process.php" method="POST">
        <input type="hidden" name="id" value="<?=$_GET['id']?>">
        <input type="submit" value="delete">
    </form>
<?php } ?>

삭제 기능을 추가한 코드다.

이전 포스트의 글 수정 기능과 마찬가지로 글을 클릭한 후에 삭제 버튼이 보이도록 if문 안에 삭제 폼을 넣었다.

삭제는 데이터에 큰 변화를 주는 작업이기 때문에 URL에 노출되지 않는 POST 방식을 사용한다.




unlink()


<?php
unlink('data/'.$_POST['id']);
header('Location: /index.php');
die;
?>

unlink() 함수는 지정된 경로의 파일을 삭제하는 php 내장 함수다.

사용자가 삭제 버튼을 눌러 보낸 id 값이 "HTML"이라면, data/HTML 파일을 찾아 서버 하드디스크에서 영구적으로 지워버린다.




실제 웹사이트를 만들 때는 이렇게 하지 않고 데이터베이스를 사용하지만, 어쨌든 CRUD가 이런 식으로 돌아간다는 흐름은 배웠다.

이제 생활코딩의 php 수업 영상도 거의 끝을 향해 가고 있다.




다음 포스트

이 글이 도움이 됐거나 유익했다면 스크롤을 조금만 더 내려서 댓글을 남겨주세요. (비로그인도 가능합니다!)
응원이나 피드백이 담긴 댓글은 제가 계속 블로그를 해나갈 수 있는 원동력이 됩니다. 😊

지인에게 보여주고 싶은 글이었다면 URL을 복사해서 메신저나 소셜 미디어에 공유해 주세요.

댓글 쓰기

0 Comments

문의하기 양식