체크하여 넘긴 업데이트/삭제 관련 질문 드립니다. > 그누4 질문답변

그누4 질문답변

그누보드4 관련 질문은 QA 로 이전됩니다. QA 그누보드4 바로가기
기존 게시물은 열람만 가능합니다.

체크하여 넘긴 업데이트/삭제 관련 질문 드립니다. 정보

체크하여 넘긴 업데이트/삭제 관련 질문 드립니다.

본문

두 개의(별개의 독립적인) A, B php 페이지에서
업데이트나 삭제를 할 때,  하나의 업데이트 php나 하나의 삭제 php를 사용하려고 합니다.

A.php 또는 B.php 의 게시물 업데이트 → scrap_s_update.php로 넘김
A.php 또는 B.php 의 게시물 삭제 → scrap_s_delete.php로 넘김

※ A.php와 B.php에 체크박스를 만들어 전체선택, 개별선택이 가능하게 했습니다.

다음 소스 코드를 살펴주십시오.
소스의 내용보다는 실행 가능 여부만 살펴주시기 바랍니다.

-----------------------------------------------------------------------------------------

① 업데이트 관련 scrap_s_update.php
<?
include_once("./_common.php");

if (!$member[mb_id])
    alert("회원만 이용하실 수 있습니다.");

if (is_array($_POST['chk_scrap'])) { // A.php에서 체크한 것
 for($i=0; $i<count($_POST['chk_scrap']); $i++){
 sql_query(" update $g4[scrap_table] set chk_alb = '' where ms_id ='{$_POST['chk_scrap'][$i]}' and mb_id = '$member[mb_id]' ");
 }

 goto_url("./scrap.php?page=$page");
}

if (is_array($_POST['chk_scrap_album'])) { // B.php에서 체크한 것
 for($i=0; $i<count($_POST['chk_scrap_album']); $i++){
 sql_query(" update $g4[scrap_table] set chk_alb = '' where ms_id ='{$_POST['chk_scrap_album'][$i]}' and mb_id = '$member[mb_id]' ");
 }

 goto_url("./scrap_album.php?page=$page");
}
?>


② 삭제 관련 scrap_s_delete.php
<?
include_once("./_common.php");

if (!$member[mb_id])
    alert("회원만 이용하실 수 있습니다.");

$tmp_array = array();

if (is_array($_POST[chk_scrap])) { //A.php에서 체크한 것
 if ($ms_id) { // 건별 삭제
  $tmp_array[0] = $ms_id;
 } else { // 전체삭제
  $tmp_array = $_POST[chk_scrap];
 }
// * 거꾸로 읽음, 댓글 등을 조회하는 것이 아니므로 꼭 그럴 필요는 없을 듯함
for ($i=count($tmp_array)-1; $i>=0; $i--)
{
mysql_query("delete from $g4[scrap_table] where ms_id ='{$tmp_array[$i]}' and mb_id = '$member[mb_id]' ");
}

goto_url("./scrap.php?page=$page");
}

if (is_array($_POST[chk_scrap_album])) { //B.php에서 체크한 것
 if ($ms_id) { // 건별 삭제
  $tmp_array[0] = $ms_id;
 } else { // 전체삭제
  $tmp_array = $_POST[chk_scrap_album];
 }
// * 거꾸로 읽음, 댓글 등을 조회하는 것이 아니므로 꼭 그럴 필요는 없을 듯함
for ($i=count($tmp_array)-1; $i>=0; $i--)
{
mysql_query("delete from $g4[scrap_table] where ms_id ='{$tmp_array[$i]}' and mb_id = '$member[mb_id]' ");
}

goto_url("./scrap_album.php?page=$page");
}
?>


-----------------------------------------------------------------------------------------

((문제점))

A.php에서 체크박스에 체크한 것은
개별 선택이든, 전체 선택이든 업데이트나 삭제가 정상적으로 이루어집니다.

그런데, B.php의 체크박스에서 체크한 것은,
개별 선택(1개 혹은 직접 체크한 복수의 갯수)의 경우는 정상 실행이 되는데,
전체 선택한 것은 실행되지 않습니다.

어떻게 해결해야 할까요?
그리고, 업데이트나 삭제 코드에 문제는 없는지 문의드립니다.

+
삭제 관련해서 제가 넣은 주석
// * 거꾸로 읽음, 댓글 등을 조회하는 것이 아니므로 꼭 그럴 필요는 없을 듯함
이 유효한지도 여쭈어봅니다.
스크랩 게시물 체크한 것을 삭제하는 것인데, 굳이 for문으로 하지 않아도 되지 않을까요?


답변 주시면 감사하겠습니다.
* 포인트가 2000점대밖에 남지 않아서 많이 걸지 못합니다. 죄송합니다. (__)

댓글 전체

자체 해결했습니다.

다른 곳의 고수님의 조언과 혼장 끙끙앓이 삽질을 비벼서, 날림 비빔밥으로 만들었습니다.
업데이트 후에, 값을 넘긴 페이지로 돌아가질 못해서, 그냥 리퍼러 처리해 버렸습니다.
전체 66 |RSS
그누4 질문답변 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT