1:1문의를 메일이 아닌 게시판으로 작업하려고하는데, 게시물을 가져오는 sql을 제대로 작성하지 못하겠습니다. 채택완료
1:1문의를 메일이 아닌 게시판으로 만들려고 하고있습니다.
카페24 1:1문의내역 게시판과 비슷한 느낌이 될거같습니다.
본인이 작성한 문의글과, 이에 대한 답변들만을 가져오는 형식으로 sql query를 작성해야하는데,
본인이 작성한 글만 가져온다면
$sql = " select * from table where mb_id = '{$member['mb_id']}' "
와 같은 형태가 될테고, 이렇게 작성하였을때 작성자 본인의 게시글을 가져오는것이 확인되었습니다.
다만 이렇게 작성하면 관리자가 해당 글에 단 답변글을 가져오지 않는 상황이 발생합니다.
그러면 where절에 관리자가 작성한 글도 가져오면 되지않을까? 라고 생각해 query를 작성해보았고,
$sql = " select * from table where mb_id = '{$member['mb_id']}' or mb_id = 'admin' "
이렇게 작성을 해보았지만, 이 경우 작성자가 작성하지 않은 글에 대한 답변글도 같이 가져와버리는 불상사가 발생한다는것을 깨닫게되었습니다.
관리자는 전체를 가져오게하면 되기때문에 문제가 없을 것 같은데, 사용자의 것을 가져올 query의 작성에서 막힌 상황입니다.
해당 query의 작성이 불가능하다고 판단될 경우, 댓글을 답변으로 사용하려고 하고있습니다.
선배님들, query의 작성에 도움을 주실 수 있으신지요?
댓글을 작성하려면 로그인이 필요합니다.
답변 1개
채택된 답변
+20 포인트
3년 전
</p>
<p><?php
// 최고관리자일 경우
if ($is_admin) {
$add_sql = " or mb_id = 'admin' ";
}
$sql = " select * from table where mb_id = '{$member['mb_id']}' {$add_sql} ";
?></p>
<p>
로그인 후 평가할 수 있습니다
답변에 대한 댓글 3개
�
3년 전
�
3년 전
기본 그누보드 형식으로 쿼리를 여러 번 실행하지 않는 이상,
답변글도 가져오는 부분은 구현이 힘듭니다.
약간의 편법?이라하면,
답글을 작성할때에 mb_10 과 같은 여분필드에
원글을 작성하는 작성자의 mb_id가 삽입되게하고
쿼리를 실행할때 mb_10 = '{$member['mb_id']}' 형식으로 하시면 될겁니다.
답변글도 가져오는 부분은 구현이 힘듭니다.
약간의 편법?이라하면,
답글을 작성할때에 mb_10 과 같은 여분필드에
원글을 작성하는 작성자의 mb_id가 삽입되게하고
쿼리를 실행할때 mb_10 = '{$member['mb_id']}' 형식으로 하시면 될겁니다.
�
3년 전
여분필드를 활용하는 방법이 있었네요!
감사합니다.
도움을 주신 덕분에 필요한 데이터를 호출할 수 있게 되었습니다!
감사합니다.
도움을 주신 덕분에 필요한 데이터를 호출할 수 있게 되었습니다!
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인전체 질문 목록
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
답변대기
채택
답변대기
답변대기
답변대기
답변대기
채택
채택
답변대기
답변대기
답변대기
채택
하지만, 제가 현재 막혀있는 부분은, 최고관리자인 경우의 query가 아닌,
일반 회원의 문의내역을 가져올 때, 그 글의 답변글도 가져오는 경우에서 막혀있습니다.
알려주신 방식으로 작업하면 제가 작성한 query가 좀 더 깔끔해질 것 같네요.
도움 감사합니다.