테스트 사이트 - 개발 중인 베타 버전입니다

qa 질문 게시판 채택완료

산다라신 3년 전 조회 1,965

자신의 글이 아니므로 삭제할수 없다고 오류가 생겼습니다

https://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=150 

이 게시글 보고 따라 하였고 스크립트는 아래와 같이 수정 했습니다..

 

</p>

<p><?php

if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가</p>

<p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨

add_stylesheet('<link rel="stylesheet" href="'.$qa_skin_url.'/style.css">', 0);

?></p>

<p><div id="bo_list">

    <?php if ($category_option) { ?>

    <!-- 카테고리 시작 { -->

    <nav id="bo_cate">

        <h2><?php echo $qaconfig['qa_title'] ?> 카테고리</h2>

        <ul id="bo_cate_ul">

            <?php echo $category_option ?>

        </ul>

    </nav>

    <!-- } 카테고리 끝 -->

    <?php } ?></p>

<p>     <!-- 게시판 페이지 정보 및 버튼 시작 { -->

    <div class="bo_fx">

        <div id="bo_list_total">

            <span>Total <?php echo number_format($total_count) ?>건</span>

            <?php echo $page ?> 페이지

        </div></p>

<p>        <?php if ($admin_href || $write_href) { ?>

        <ul class="btn_bo_user">

            <?php if ($admin_href) { ?><li><a href="<?php echo $admin_href ?>" class="btn_admin">관리자</a></li><?php } ?>

            <?php if ($write_href) { ?><li><a href="<?php echo $write_href ?>" class="btn_b02">문의등록</a></li><?php } ?>

        </ul>

        <?php } ?>

    </div>

    <!-- } 게시판 페이지 정보 및 버튼 끝 --></p>

<p>    <form name="fqalist" id="fqalist" action="./qadelete.php" onsubmit="return fqalist_submit(this);" method="post">

    <input type="hidden" name="stx" value="<?php echo $stx; ?>">

    <input type="hidden" name="sca" value="<?php echo $sca; ?>">

    <input type="hidden" name="page" value="<?php echo $page; ?>"></p>

<p>    <?php if ($is_checkbox) { ?>

    <div id="list_chk">

        <label for="chkall" class="sound_only">게시물 전체</label>

        <input type="checkbox" id="chkall" onclick="if (this.checked) all_checked(true); else all_checked(false);">

    </div>

    <?php } ?></p>

<p>    <div class="ul_wrap ul_01">

        <ul>

            <?php

            $update_href = $delete_href = '';

set_session('ss_delete_token', $token = uniqid(time()));

            for ($i=0; $i<count($list); $i++) {

                // 로그인중이고 자신의 글이라면 또는 관리자라면 비밀번호를 묻지 않고 바로 수정, 삭제 가능

if (($member['mb_id'] && ($member['mb_id'] === $list[$i]['mb_id'])) || $is_admin) {

    $update_href = short_url_clean(G5_BBS_URL.'/write.php?w=u&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&page='.$page.$qstr);

    $delete_href ='./delete.php?bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&token='.$token.'&page='.$page.urldecode($qstr);

}

else if (!$list[$i]['mb_id']) { // 회원이 쓴 글이 아니라면

    $update_href = './password.php?w=u&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&page='.$page.$qstr;

    $delete_href = './password.php?w=d&bo_table='.$bo_table.'&wr_id='.$list[$i]['wr_id'].'&page='.$page.$qstr;

}

            ?>

            <li class="bo_li<?php if ($is_checkbox) echo ' bo_adm'; ?>">

                <?php if ($is_checkbox) { ?>

                <div class="li_chk">

                    <label for="chk_qa_id_<?php echo $i ?>" class="sound_only"><?php echo $list[$i]['subject']; ?></label>

                    <input type="checkbox" name="chk_qa_id[]" value="<?php echo $list[$i]['qa_id'] ?>" id="chk_qa_id_<?php echo $i ?>">

                </div>

                <?php } ?>

                <div class="li_title">

                    <a href="<?php echo $list[$i]['view_href']; ?>">

                        <strong><?php echo $list[$i]['category']; ?></strong>

                        <?php echo $list[$i]['subject']; ?>

                    </a>

                </div>

                <div class="li_info">

                    <span><?php echo $list[$i]['num']; ?></span>

                    <span><?php echo $list[$i]['name']; ?></span>

                    <span><?php echo $list[$i]['date']; ?></span>

                    <?php if ($delete_href) { ?><a href="<?php echo $delete_href ?>" onclick="del(this.href); return false;">삭제</a><?php } ?></p>

<p>

                    

                    <span><?php echo $list[$i]['icon_file']; ?></span>

                </div>

                <div class="li_stat <?php echo ($list[$i]['qa_status'] ? 'txt_done' : 'txt_rdy'); ?>"><?php echo ($list[$i]['qa_status'] ? '답변완료' : '답변대기'); ?></div>

            </li>

            <?php

            }

            ?></p>

<p>            <?php if ($i == 0) { echo '<li class="empty_list">게시물이 없습니다.</li>'; } ?>

        </ul>

    </div></p>

<p>    <div class="bo_fx">

        <?php if ($is_checkbox) { ?>

        <ul class="btn_bo_adm">

            <li><input type="submit" name="btn_submit" value="선택삭제" onclick="document.pressed=this.value"></li>

        </ul>

        <?php } ?></p>

<p>        <ul class="btn_bo_user">

            <?php if ($list_href) { ?><li><a href="<?php echo $list_href ?>" class="btn_b01">목록</a></li><?php } ?>

            <?php if ($write_href) { ?><li><a href="<?php echo $write_href ?>" class="btn_b02">문의등록</a></li><?php } ?>

        </ul>

    </div>

    </form>

</div></p>

<p><?php if($is_checkbox) { ?>

<noscript>

<p>자바스크립트를 사용하지 않는 경우
별도의 확인 절차 없이 바로 선택삭제 처리하므로 주의하시기 바랍니다.</p>

</noscript>

<?php } ?></p>

<p><!-- 페이지 -->

<?php echo $list_pages;  ?></p>

<p><!-- 게시판 검색 시작 { -->

<fieldset id="bo_sch">

    <legend>게시물 검색</legend></p>

<p>    <form name="fsearch" method="get">

    <input type="hidden" name="sca" value="<?php echo $sca ?>">

    <label for="stx" class="sound_only">검색어<strong class="sound_only"> 필수</strong></label>

    <input type="text" name="stx" value="<?php echo stripslashes($stx) ?>" required id="stx" class="frm_input required" size="15" maxlength="15">

    <input type="submit" value="검색" class="btn_submit">

    </form>

</fieldset>

<!-- } 게시판 검색 끝 --></p>

<p><?php if ($is_checkbox) { ?>

<script>

function all_checked(sw) {

    var f = document.fqalist;</p>

<p>    for (var i=0; i<f.length; i++) {

        if (f.elements[i].name == "chk_qa_id[]")

            f.elements[i].checked = sw;

    }

}</p>

<p>function fqalist_submit(f) {

    var chk_count = 0;</p>

<p>    for (var i=0; i<f.length; i++) {

        if (f.elements[i].name == "chk_qa_id[]" && f.elements[i].checked)

            chk_count++;

    }</p>

<p>    if (!chk_count) {

        alert(document.pressed + "할 게시물을 하나 이상 선택하세요.");

        return false;

    }</p>

<p>    if(document.pressed == "선택삭제") {

        if (!confirm("선택한 게시물을 정말 삭제하시겠습니까?\n\n한번 삭제한 자료는 복구할 수 없습니다"))

            return false;

    }</p>

<p>    return true;

}

</script>

<?php } ?>

<!-- } 게시판 목록 끝 --></p>

<p>

댓글을 작성하려면 로그인이 필요합니다.

답변 4개

채택된 답변
+20 포인트
독구파랑
onclick="del(this.href); return false;" 
여기에 대응되는 del 함수가 없네요.
자바스크립트에 del 함수를 추가하시거나 아니면 
onclick="del(this.href); return false;" 
를 삭제하고 테스트 해보십시요
로그인 후 평가할 수 있습니다

답변에 대한 댓글 5개

산다라신
3년 전
안녕하세요 답변 감사합니다. 지웠는데 똑같이 오류가 나옵니다.
독구파랑
3년 전
혹시 정확하게 어떤 에러 문구가 표시되는지 알 수 있을까요?
산다라신
3년 전
"자신의 글이 아니므로 삭제할 수 없습니다." 라고 나옵니다
독구파랑
3년 전
/bbs/delete.php 파일의 32라인에서 $write['mb_id']와 $member['mb_id']가 정상적으로 넘어오는지 확인 부탁드립니다.
산다라신
3년 전
아래 작은별님 답글이 정답같네요.. qa 게시판 적용법은 없는걸까요.

댓글을 작성하려면 로그인이 필요합니다.

3년 전
로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

3년 전

올려주신 질문 내용은 QA 페이지고 팁 내용은 게시판 관련 내용입니다.

QA 페이지는 일반적인 게시판이 아니라서 내용 자체가 서로 다르기 때문에 게시판과 관련된 팁 내용들은 애초에 적용이 안 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

산다라신
3년 전
답글 감시합니다.

댓글을 작성하려면 로그인이 필요합니다.

자신의 글"인데

자신의 글이 아니므로 삭제할 수 없다"라고

메시지가 나오는 상황인가요?

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

엑스엠엘
3년 전
소스에 오류가 있네요.

$update_href = $delete_href = '';
set_session('ss_delete_token', $token = uniqid(time()));
for ($i=0; $i<count($list); $i++) {

==>


set_session('ss_delete_token', $token = uniqid(time()));
for ($i=0; $i<count($list); $i++) {
$update_href = $delete_href = '';
산다라신
3년 전
안녕하세요 답글 감사합니다.
$update_href = $delete_href = '';
set_session('ss_delete_token', $token = uniqid(time()));
for ($i=0; $i<count($list); $i++) {

위 소스를 아래와 같이 수정해서 똑같이 오류가 발생하세요

set_session('ss_delete_token', $token = uniqid(time()));
for ($i=0; $i<count($list); $i++) {
$update_href = $delete_href = '';

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인