삭제기능 추가하기
본문
아래의 신고기능을 사용하려고 하는데요
삭제기능이 없습니다.ㅜㅜ
관리자만 삭제가능하도록 추가하는 방법좀 알려주세요 ^-^
mb_4 필드를 사용하고있으며, 개별삭제도 가능했으면 좋겠습니다~ㅜㅜ
1.아래 소스를 singo.php 라는 파일로 만들어 그누보드가 설치된 폴더에 넣습니다.
ex)그누보드가 gb4라는 폴더에 설치 됐다면 gb4에 넣으면 됨
////////////////////////////////////////////////////////////////////////
<style>
* { padding: 0; margin: 0; }
body,td,input,div,form,select,textarea,pre{font-size:9pt; font-family:돋움,Tahoma; color:#000000;}
</style>
<center>
<div style="height:5px; line-height:1px; font-size:1px;"> </div>
<?
include_once("./_common.php");
$mmnick = $_POST['mmnick'];
$mpage = $_POST['mpage'];
$sau = $_POST['sau'];
if(!$mpage){
?>
신고대상 에는 닉네임을 적으면 됩니다. 정확하게 적으세요. 3천 포인트 이상 부터 신고를 할 수 있습니다.<br>
구속 시간은 징계횟수 x 6시간 입니다. 신고를 3번 당하면 18시간 동안 감금 됩니다.<br>
구속 시간 동안은 "건의 / 신고란" 을 제외한 나머지 게시판에 접속을 할 수 없습니다.<br>
허위 신고를 하였을 시 589578563시간 동안 감금 됩니다. ;;;<br>
<form method=post action=singo.php>
신고대상 : <input type="text" size="20" name=mmnick >
<input type=hidden name=mpage value="p1">
/ 사유 :
<SELECT NAME="sau">
<OPTION VALUE="" SELECTED>선택하세요</OPTION>
<OPTION VALUE="성의 없는 글">성의 없는 글</OPTION>
<OPTION VALUE="욕설/인심공격">욕설/인심공격</OPTION>
<OPTION VALUE="무성의 도배">무성의 도배</OPTION>
<OPTION VALUE="공지 위반">공지 위반</OPTION>
</SELECT>
<!-- 위 신고사유는 자신에 맞게 맘대로 추가-->
<input type=submit value="확 인">
</form>
<?
}
else if($mpage == "p1") {
if(!$sau )
echo "<script>alert('사유를 입력하지 않았습니다.');location.href ='singo.php';</script>";
$sql = " select mb_nick,mb_level from g4_member where mb_nick = '$mmnick' ";
$row = sql_fetch($sql);
$snick = $row['mb_nick'];
if( $row['mb_level'] > 4 ){ // 5레벨 이상은 신고 당하지 않게 한다
echo "<script>alert('운영진은 신고 할 수 없습니다.');location.href ='singo.php';</script>";
}
if( $member['mb_point'] < 3000 ){ // 3천포인트 이상 보유해야 신고를 할 수 있다
echo "<script>alert('3천포인트 이상 부터 신고를 할 수 있습니다.');location.href ='singo.php';</script>";
}
if(!$snick){
echo "<script>alert('신고한 닉네임이 존재하지 않습니다.');location.href ='singo.php';</script>";
}
else{
?>
<b><?=$snick?></b>님을 <b><?=$sau?></b> 로 신고 하겠습니까?<br />
<form method=post action=singo.php>
<input type=hidden name=mmnick value="<?=$mmnick?>">
<input type=hidden name=sau value="<?=$sau?>">
<input type=hidden name=mpage value="p2">
<input type=submit value="확 인"> <input type=button value="아니오" onclick="history.back();">
</form>
<?
}
}
else if($mpage == "p2"){
$sql = " select mb_nick,mb_4 from g4_member where mb_nick = '$mmnick' ";
$row = sql_fetch($sql);
$snick = $row['mb_nick'];
$smb_4 = $row['mb_4'];
if( $member['mb_point'] >= 3000 && $snick){ //신고자가 3천포이트 이상 보유하고 신고자 닉네임이 있다면 신고완료
if($smb_4){
$Amb_4 = explode("|",$smb_4);
$shit = $Amb_4[2];
}else{
$shit = 0;
$Amb_4[0] =$g4['time_ymdhis'] ;
}
$stime = date("Y-m-d H:i:s", strtotime($Amb_4[0]) + (int)(60*60*$shit*6)); //여기 숫자 6을 자신에 맞게 변경
if($stime > $g4['time_ymdhis']){
echo "<script>alert('아직 징계가 풀리지 않았습니다.');location.href ='singo.php';</script>";
}
else{
$shit++;
$sss = $g4['time_ymdhis']."|".$member['mb_nick']."|".$shit."|".$sau;
$sql = " update g4_member SET mb_4 = '$sss' where mb_nick = '$snick' ";
sql_query($sql);
echo "<meta http-equiv=\"refresh\" content=\"3; URL=singo.php\">";
echo $snick."님을 신고 완료 하였습니다.{$stime}<br />";
}
}
}
?>
<div style="height:5px; line-height:1px; font-size:1px;"> </div>
<TABLE width="650">
<TR align="center" height="25">
<TD width="100">피 고 인</TD>
<TD width="50">징계횟수</TD>
<TD width="150">구 속 일</TD>
<TD width="150">출 소 일</TD>
<TD width="">죄 목</TD>
<TD width="100">신고자</TD>
</TR>
<tr height=2 bgcolor='#999999'><td colspan=6> </td></tr>
<?
$sql2 = 'SELECT mb_nick,mb_4 FROM g4_member WHERE mb_4 <> \'\' ORDER BY `mb_4` DESC ';
$result2 = sql_query($sql2);
$ii=1;
while($row2 = sql_fetch_array($result2)){
$snick2[$ii] = $row2['mb_nick'];
$Amb_4[$ii] = explode("|",$row2['mb_4']);
$stime2 = date("Y-m-d H:i:s", strtotime($Amb_4[$ii][0]) + (int)(60*60*$Amb_4[$ii][2]*6));//여기 숫자 6을 자신에 맞게 변경
echo "<tr align=\"center\" height=\"25\"><td>".$snick2[$ii]."</td><td>".$Amb_4[$ii][2]."</td><td>".$Amb_4[$ii][0]."</td><td>".$stime2."</td><td>".$Amb_4[$ii][3]."</td>";
if($member['mb_level']>4) echo "<td>".$Amb_4[$ii][1]."</td>";//레벨5이상만 신고자의 이름이 보입니다.
else echo"<td>비 공 개</td>";
echo "</tr><tr height=2 bgcolor='#dddddd'><td colspan=6> </td></tr>";
$ii++;
}
?>
</TABLE>
</center>
////////////////////////////////////////////////////////////////////////
2. 그누보드 head.php 파일 상단에 아래 내용을 추가합니다.
////////////////////////////////////////////////////////////////////////
if($member['mb_4']){
if($bo_table && $bo_table != "게시판ID"){ // 불량회원이 이 게시판만 접속 가능하게 합니다.다른 게시판 접속 불가능
$Amb_4 = explode("|",$member['mb_4']);
$stime = date("Y-m-d H:i:s", strtotime($Amb_4[0]) + (int)(60*60*$Amb_4[2]*6)); //여기 6은 singo.php의 *6의 숫자와 같게 만들어야 함
if($stime > $g4['time_ymdhis']){
echo "<script>alert('회원님은 현재 구속 중 입니다.');top.location.href=\"http://자신의 사이트주소.com 혹은 이동될 페이지\";</script>";
}
}
}
////////////////////////////////////////////////////////////////////////
ex)그누보드가 gb4라는 폴더에 설치 됐다면 gb4에 넣으면 됨
////////////////////////////////////////////////////////////////////////
<style>
* { padding: 0; margin: 0; }
body,td,input,div,form,select,textarea,pre{font-size:9pt; font-family:돋움,Tahoma; color:#000000;}
</style>
<center>
<div style="height:5px; line-height:1px; font-size:1px;"> </div>
<?
include_once("./_common.php");
$mmnick = $_POST['mmnick'];
$mpage = $_POST['mpage'];
$sau = $_POST['sau'];
if(!$mpage){
?>
신고대상 에는 닉네임을 적으면 됩니다. 정확하게 적으세요. 3천 포인트 이상 부터 신고를 할 수 있습니다.<br>
구속 시간은 징계횟수 x 6시간 입니다. 신고를 3번 당하면 18시간 동안 감금 됩니다.<br>
구속 시간 동안은 "건의 / 신고란" 을 제외한 나머지 게시판에 접속을 할 수 없습니다.<br>
허위 신고를 하였을 시 589578563시간 동안 감금 됩니다. ;;;<br>
<form method=post action=singo.php>
신고대상 : <input type="text" size="20" name=mmnick >
<input type=hidden name=mpage value="p1">
/ 사유 :
<SELECT NAME="sau">
<OPTION VALUE="" SELECTED>선택하세요</OPTION>
<OPTION VALUE="성의 없는 글">성의 없는 글</OPTION>
<OPTION VALUE="욕설/인심공격">욕설/인심공격</OPTION>
<OPTION VALUE="무성의 도배">무성의 도배</OPTION>
<OPTION VALUE="공지 위반">공지 위반</OPTION>
</SELECT>
<!-- 위 신고사유는 자신에 맞게 맘대로 추가-->
<input type=submit value="확 인">
</form>
<?
}
else if($mpage == "p1") {
if(!$sau )
echo "<script>alert('사유를 입력하지 않았습니다.');location.href ='singo.php';</script>";
$sql = " select mb_nick,mb_level from g4_member where mb_nick = '$mmnick' ";
$row = sql_fetch($sql);
$snick = $row['mb_nick'];
if( $row['mb_level'] > 4 ){ // 5레벨 이상은 신고 당하지 않게 한다
echo "<script>alert('운영진은 신고 할 수 없습니다.');location.href ='singo.php';</script>";
}
if( $member['mb_point'] < 3000 ){ // 3천포인트 이상 보유해야 신고를 할 수 있다
echo "<script>alert('3천포인트 이상 부터 신고를 할 수 있습니다.');location.href ='singo.php';</script>";
}
if(!$snick){
echo "<script>alert('신고한 닉네임이 존재하지 않습니다.');location.href ='singo.php';</script>";
}
else{
?>
<b><?=$snick?></b>님을 <b><?=$sau?></b> 로 신고 하겠습니까?<br />
<form method=post action=singo.php>
<input type=hidden name=mmnick value="<?=$mmnick?>">
<input type=hidden name=sau value="<?=$sau?>">
<input type=hidden name=mpage value="p2">
<input type=submit value="확 인"> <input type=button value="아니오" onclick="history.back();">
</form>
<?
}
}
else if($mpage == "p2"){
$sql = " select mb_nick,mb_4 from g4_member where mb_nick = '$mmnick' ";
$row = sql_fetch($sql);
$snick = $row['mb_nick'];
$smb_4 = $row['mb_4'];
if( $member['mb_point'] >= 3000 && $snick){ //신고자가 3천포이트 이상 보유하고 신고자 닉네임이 있다면 신고완료
if($smb_4){
$Amb_4 = explode("|",$smb_4);
$shit = $Amb_4[2];
}else{
$shit = 0;
$Amb_4[0] =$g4['time_ymdhis'] ;
}
$stime = date("Y-m-d H:i:s", strtotime($Amb_4[0]) + (int)(60*60*$shit*6)); //여기 숫자 6을 자신에 맞게 변경
if($stime > $g4['time_ymdhis']){
echo "<script>alert('아직 징계가 풀리지 않았습니다.');location.href ='singo.php';</script>";
}
else{
$shit++;
$sss = $g4['time_ymdhis']."|".$member['mb_nick']."|".$shit."|".$sau;
$sql = " update g4_member SET mb_4 = '$sss' where mb_nick = '$snick' ";
sql_query($sql);
echo "<meta http-equiv=\"refresh\" content=\"3; URL=singo.php\">";
echo $snick."님을 신고 완료 하였습니다.{$stime}<br />";
}
}
}
?>
<div style="height:5px; line-height:1px; font-size:1px;"> </div>
<TABLE width="650">
<TR align="center" height="25">
<TD width="100">피 고 인</TD>
<TD width="50">징계횟수</TD>
<TD width="150">구 속 일</TD>
<TD width="150">출 소 일</TD>
<TD width="">죄 목</TD>
<TD width="100">신고자</TD>
</TR>
<tr height=2 bgcolor='#999999'><td colspan=6> </td></tr>
<?
$sql2 = 'SELECT mb_nick,mb_4 FROM g4_member WHERE mb_4 <> \'\' ORDER BY `mb_4` DESC ';
$result2 = sql_query($sql2);
$ii=1;
while($row2 = sql_fetch_array($result2)){
$snick2[$ii] = $row2['mb_nick'];
$Amb_4[$ii] = explode("|",$row2['mb_4']);
$stime2 = date("Y-m-d H:i:s", strtotime($Amb_4[$ii][0]) + (int)(60*60*$Amb_4[$ii][2]*6));//여기 숫자 6을 자신에 맞게 변경
echo "<tr align=\"center\" height=\"25\"><td>".$snick2[$ii]."</td><td>".$Amb_4[$ii][2]."</td><td>".$Amb_4[$ii][0]."</td><td>".$stime2."</td><td>".$Amb_4[$ii][3]."</td>";
if($member['mb_level']>4) echo "<td>".$Amb_4[$ii][1]."</td>";//레벨5이상만 신고자의 이름이 보입니다.
else echo"<td>비 공 개</td>";
echo "</tr><tr height=2 bgcolor='#dddddd'><td colspan=6> </td></tr>";
$ii++;
}
?>
</TABLE>
</center>
////////////////////////////////////////////////////////////////////////
2. 그누보드 head.php 파일 상단에 아래 내용을 추가합니다.
////////////////////////////////////////////////////////////////////////
if($member['mb_4']){
if($bo_table && $bo_table != "게시판ID"){ // 불량회원이 이 게시판만 접속 가능하게 합니다.다른 게시판 접속 불가능
$Amb_4 = explode("|",$member['mb_4']);
$stime = date("Y-m-d H:i:s", strtotime($Amb_4[0]) + (int)(60*60*$Amb_4[2]*6)); //여기 6은 singo.php의 *6의 숫자와 같게 만들어야 함
if($stime > $g4['time_ymdhis']){
echo "<script>alert('회원님은 현재 구속 중 입니다.');top.location.href=\"http://자신의 사이트주소.com 혹은 이동될 페이지\";</script>";
}
}
}
////////////////////////////////////////////////////////////////////////
답변을 작성하시기 전에 로그인 해주세요.