관리자 승인 후 게시글 보이기 정보
관리자 승인 후 게시글 보이기본문
https://sir.kr/qa/461431 답변글 겸 겸사 겸사...
1. view.skin.php 의 적당위치에 아래의 코드를 줍니다.
<?php
$admin_check_display = (!$is_admin && $view['wr_1'] != "yes") ? " style=display:none" : "";
if ($wr_1) {
$wr_1 = $_POST['wr_1'];
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id'");
}
echo "<script>if (sessionStorage.reLoad) sessionStorage.clear(), location.href = '".$_SERVER['REQUEST_URI']."';</script>";
if ($is_admin) {
$yes_check = ($view['wr_1'] == "yes" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
$no_check = ($view['wr_1'] == "no" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
echo "<form method=post><input type=radio name=wr_1 value=yes".$yes_check." required>YES<input style=margin-left:5px type=radio name=wr_1 value=no".$no_check." required>NO</form>";
}
?>
----------
<div id="bo_v_con"><?php echo get_view_thumbnail($view['content']); ?></div>
2. 위의 부분을 찾아서 아래의 코드로 바꿉니다. 본문입니다.
<?php $admin_check_content = ($is_admin || $view['wr_1'] == "yes") ? get_view_thumbnail($view['content']) : "관리자의 승인이 필요합니다."; ?>
<div id="bo_v_con"><?php echo $admin_check_content; ?></div>
----------
3. 첨부이미지, 첨부파일, 첨부링크 부분도 바꿔줍니다.
echo "<div id=\"bo_v_img\">\n"; 를
echo "<div id=bo_v_img".$admin_check_display.">"; 로
<section id="bo_v_file"> 를
<section id="bo_v_file"<?php echo $admin_check_display; ?>> 로
<section id="bo_v_link"> 를
<section id="bo_v_link"<?php echo $admin_check_display; ?>> 로
----------
4. 아래처럼 본인이 1번코드를 준 위치에 라디오버튼이 생겨납니다.
승인을 해 주려면 YES 아니라면 NO 를 선택합니다.
물론 관리자에게만 보입니다.
----------
5. 사용 여분필드는 1번으로 하였으니
다른 번호로 바꾸고 싶으면 그 부분을 찾아서 모두 바꾸세요.
아작스나 외부문서 없이 본문에서 라디오버튼을 선택하는 순간
다이렉트로 여분필드가 업뎃되면서 그 자리에서 새로고침이 됩니다.
pc의 basic 스킨을 사용하였습니다.
다른 스킨이나 모바일 적용은 동일한 방식으로 해 주면 됩니다.
리스트나 최신글의 적용은 wr_1 == "yes" 일 때만 승인, "no" 또는 아닐때는 미승인이니
재주껏 이프문이나 3항문으로 코드를 적용해 주세요.
!-->!-->!-->!-->
추천
14
14
댓글 18개
유용한 소스코드네요!! 비타주리님 감사합니다.
오오~ 때마침 필요했던 소스인데 감사히 잘 사용하겠습니다! ^-^
추천 꾸욱~ 눌러드렸어요오~
라디오버튼으로 간단히 처리하는 아이디어가 정말 유용하네요 ^^
그럼 비타주리 님께서도 맛점 드시고 좋은 오후 되세요 :)
추천 꾸욱~ 눌러드렸어요오~
라디오버튼으로 간단히 처리하는 아이디어가 정말 유용하네요 ^^
그럼 비타주리 님께서도 맛점 드시고 좋은 오후 되세요 :)
@Innisfree 지금 생각해보니 첨부이미지, 첨부파일, 첨부링크 부분도
관리자 미승인시 숨겨야 하는 코드가 빠졌네요.
위의 php 코드 가장 상단에 한줄 코드를 추가하구요.
세군데를 고쳐야 더 완벽할 것 같습니다.^^
관리자 미승인시 숨겨야 하는 코드가 빠졌네요.
위의 php 코드 가장 상단에 한줄 코드를 추가하구요.
$admin_check_display = (!$is_admin && $view['wr_1'] != "yes") ? " style=display:none" : "";
if ($wr_1) {
.
.
echo "<div id=\"bo_v_img\">\n"; 를
echo "<div id=bo_v_img".$admin_check_display.">"; 로
<section id="bo_v_file"> 를
<section id="bo_v_file"<?php echo $admin_check_display; ?>> 로
<section id="bo_v_link"> 를
<section id="bo_v_link"<?php echo $admin_check_display; ?>> 로
세군데를 고쳐야 더 완벽할 것 같습니다.^^
감사합니다.
@트리플 감사합니다.
잘 활용하겠습니다.
감사합니다~
감사합니다~
@DawnDew 유용하게 쓰세요.^^
감사합니다.
@alexseo 감사합니다
능력자 이십니다!! 활용해 보겠습니다 감사합니다!
@야채킴 감사합니다
고맙습니다.
@그누폐인 감사합니다
와~ 정말 감사해요 ㅎㅎㅎ
감사합니다. 선추천하고 나중에 코드를 적용해봅니다.
게시판을 관리하는데 매우 유용하게 사용할 수 있을 것 같습니다.
view.skin에서만 구현하는 것이 놀라울 따름입니다.
저만 그런지는 모르겠는데
<?php
$admin_check_display = (!$is_admin && $view['wr_1'] != "yes") ? " style=display:none" : "";
if ($wr_1) {
$wr_1 = $_POST['wr_1'];
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id'");
}
echo "<script>if (sessionStorage.reLoad) sessionStorage.clear(), location.href = '".$_SERVER['REQUEST_URI']."';</script>";
if ($is_admin) {
$yes_check = ($view['wr_1'] == "yes" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
$no_check = ($view['wr_1'] == "no" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
echo "<form method=post><input type=radio name=wr_1 value=yes".$yes_check." required>YES<input style=margin-left:5px type=radio name=wr_1 value=no".$no_check." required>NO</form>";
}
?>
위의 코드를 이미지를 출력하는 코드
<?php
// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=bo_v_img".$admin_check_display.">";//원문 "<div id=\"bo_v_img\">\n";
foreach($view['file'] as $view_file) {
echo get_file_thumbnail($view_file);
}
echo "</div>\n";
}
?>
아래에 넣어니까 본문, 링크, 첨부파일(이미지제외)이 승인전에는 표시안되고 승인후에 표시가되는데 이미지가 계속 나타고 있습니다.
그래서 이 코드를 이미지 출력코드위에 넣어주니까 승인전에는 이미지도 나타나지 않는것을 볼 수있었습니다.
<!-- 관리자 승인 후 게시글 보이기 시작 -->
<?php
$admin_check_display = (!$is_admin && $view['wr_1'] != "yes") ? " style=display:none" : "";
if ($wr_1) {
$wr_1 = $_POST['wr_1'];
sql_query("update $write_table set wr_1 = '$wr_1' where wr_id = '$wr_id'");
}
echo "<script>if (sessionStorage.reLoad) sessionStorage.clear(), location.href = '".$_SERVER['REQUEST_URI']."';</script>";
if ($is_admin) {
$yes_check = ($view['wr_1'] == "yes" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
$no_check = ($view['wr_1'] == "no" ? " checked" : "")." onclick=sessionStorage.reLoad=1;submit()";
echo "<form method=post><input type=radio name=wr_1 value=yes".$yes_check." required>YES<input style=margin-left:5px type=radio name=wr_1 value=no".$no_check." required>NO</form>";
}
?>
<!-- 관리자 승인 후 게시글 보이기 시작 -->
<?php
// 파일 출력
$v_img_count = count($view['file']);
if($v_img_count) {
echo "<div id=bo_v_img".$admin_check_display.">";//원문 "<div id=\"bo_v_img\">\n";
foreach($view['file'] as $view_file) {
echo get_file_thumbnail($view_file);
}
echo "</div>\n";
}
?>
@김철용 알고나면 쉬워요