본문 바로가기

웹 모의해킹 스터디/웹 개발 (PHP | MySQL)

[php/mysql] 게시판 글 삭제 구현하기

 

가장 간단한 삭제 페이지다 이제야 비로소 글 작성, 보기, 수정, 삭제 모두 구현이 완료되었다

 

 

[delete.php]

<?php
session_start();
$name = isset($_SESSION['name']) ? $_SESSION['name'] : "";
include "../db_conn.php";

$number = $_GET['idx'];
$sql = "select id from board where idx = $number";
$result = mysqli_query($db_conn, $sql);
$row = mysqli_fetch_array($result);

if (!$name) {
   echo "<script>
   alert(\"로그인이 필요합니다.\");
   location.href = \"../member/login.php\";
   </script>";
   exit;
} else if ($_SESSION['id'] != $row['id']) {
   echo "<script>
    alert(\"권한이 없습니다.\");
    history.back();
    </script>";
   exit;
} else {
   $sql2 = "delete from board where idx = $number";
   $result2 = mysqli_query($db_conn, $sql2);
   // echo "<script> alert(\"삭제되었습니다.\");</script>";
   header("Location: ../main/index.php");
}
mysqli_close($db_conn);

 

세션을 이용해서 로그인하지 않은 사용자가 접근 시 로그인 페이지로 리다이렉트 시키고, 권한이 없는 사용자가 접할 수 없도록 인증 절차를 구현했다. 

 

삭제는 delete문을 이용한다. get 방식으로 받은 idx 번호에 해당하는 글을 삭제한다.