글 삭제하는 기능은 수정 기능보다 좀 더 간결하다.
우선 앞서 작성한 edit.php와 edit_ok.php 파일을 각각 delete.php와 delete_ok.php 로 복사한 후 아래와 같이
수정하면 된다.
<delete.php>
<?
$main_no = $_GET[main_no];
?>
<html>
<head>
<meta HTTP-EQUIV="CONTENT-TYPE" content="text/html;charset=EUC-kr">
<title>글 삭제하기</title>
<script language="JavaScript">
<!--
function send()
{
var x = window.confirm("정말로 삭제하시겠습니까?");
if(x)
document.delete_form.submit();
else
document.location.replace("read.php?main_no=<? echo $main_no ?>");
}
-->
</script>
</head>
<body bgcolor="#ffffff">
<div align="center">
<table border="0">
<tr>
<td><font color="red">글 삭제하기</font></td>
</tr>
</table>
</br>
<form name="delete_form" action="delete_ok.php" method="post">
<input type="hidden" name="main_no" value="<? echo $main_no ?>">
<table cellspacing="0" border="0">
<tr>
<td align="left">비밀번호를 입력하세요: </td>
<td align="left"><input type="password" name="passwd" size="12" maxlength="12"></td>
</tr>
</table>
</br>
<table>
<tr>
<td colspan="2">
<input type="button" onClick="send()" value="삭제">
<input type="button" onClick="javascript:(document.location.replace('read.php?main_no=<? echo $main_no ?>'));" value="취 소">
<input type="button" onClick="javascript:(document.location.replace('list.php'));" value="글 목록보기">
</td>
</tr>
</table>
</form>
</div>
</body>
</html>
<delete_ok.php>
<?
//include common functions to connect to DB
include 'db_connect.php';
$main_no = $_POST['main_no'];
$passwd = $_POST['passwd'];
//Check password routine
$pw_sql = "SELECT passwd FROM board WHERE main_no='$main_no'";
$result = mysql_query($pw_sql);
$row = mysql_fetch_array($result);
if($passwd != $row['passwd'] )
echo "<script language=\"JavaScript\">
alert(\"패스워드가 맞지 않습니다.\");
history.back(-1);
</script>";
else {
//delete column
$sql = "DELETE FROM board WHERE main_no='$main_no' ";
mysql_query($sql) or dbError(mysql_error());
echo "<script language=\"JavaScript\">
alert(\"글을 삭제했습니다.\");
document.location.replace(\"list.php\");
</script>";
}
?>
delete.php에서는 자바스크립트의 내용을 변경하고, 비밀번호를 입력받는 폼으로 수정한다.
delete_ok.php에서는 입력받은 패스워드와 일치 여부를 확인 후 DB에서 해당 글을 삭제하면 된다.