개발 Q&A

제목 Mysql 쿼리 관련 질문입니다.
글쓴이 꾸숑 작성시각 2013/04/21 02:32:12
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 16028   RSS

Mysql 쿼리 관련 질문입니다.
게시판 원글 작성자에게 답글이 작성되었음을 메일 이나 SMS로 발송하기 위한 작업을 하고 있습니다.
그러기 위해서는 답글 작성시 원글 레코드를 호출 해야 합니다.
원글 레코드에 원글작성자의 전화번호 메일 등이 있기 때문입니다.

게시판에서 답글 레코드를 불러 온후에 원글 레코드를 불러 올려고 합니다.

아래의 레코드 값은 답글 레코드 입니다.
답글 레코드에는
num (값:10123)  AUTO_INCREMENT
gnum (값:10101)
depth (값: AB)
이렇게 필드가 세개가 있습니다.

원글 레코드를 불러오려면
$num(값:10123)과 같은 num(값:10123)의 레코드를 불러온후
gnum(값:10101)인 레코드 중에서 depth(값:A)인 레코드를 불러와야 합니다.
(첨부된 이미지를 참고 하시면 이해가 빠를 뜻 합니다.)

현재 쿼리상 $num(값:10123) 으로만 레코드를 불러올수 있습니다.

어떻게 where문으로 원글 레코드를 불러 올수 있을까요?

설명이 잘되었는지 걱정이지만 답답한 마음에 이렇게 질문 드립니다.
부탁드립니다.

아래는 제가 작업하던 내용입니다.

//게시판 답글 sms 발송
 function smss_board_reply(){
   $num = $this->num;
   $this->db->select("*");
   $this->db->where('num', $num);
   $query = $this->db->get($this->id);
   $row = $query->row_array();

   $board_name = $row['board_name'];
   $data['snd_number'] = $this->session->userdata('mobile');//보내는 사람 번호
   $data['rcv_number'] = $row['mobile'];//받는사람 번호
   $data['sms_content'] = "{$board_name} 게시판에 답글이 등록되었습니다.";//전송 내용
   return $data;
    }

태그 mysql
첨부파일 aaa.tar (30.0 KB)
 다음글 이미지 업로드 파일을 어떻게 처리 할까요..? (3)
 이전글 .htaccess 설정관련 질문 드립니다. (4)

댓글

risa / 2013/04/21 13:11:31 / 추천 0
필드만 봐서는  어떻게 구분 하실건지는 잘 모르겠습니다만...

요컨데 요약 하면

where 절을 여러개 넣고 싶으시다는것 같네요.


$this->db->where('num', $num);
$this->db->where('gnum', '10101');
$this->db->where('depth', 'A');
$query = $this->db->get($this->id);
$row['a'] = $query->row_array(); //원글

$this->db->where('num', $num);
$this->db->where('gnum', '10101');
$this->db->where('depth', 'AB');
$query = $this->db->get($this->id);
$row['ab'] = $query->row_array(); //답글

꾸숑 / 2013/04/21 17:26:22 / 추천 0
답변 감사합니다.
테스트 해보고 보고 드릴게요^^
꾸숑 / 2013/04/21 22:36:05 / 추천 0

risa//
해결햇습니다. 조금만 생각하면 될것을 경험이 없다보니 잠깐 맨붕이 왔네요...
아래 형태로 하면 자유롭게 테이블과 레코드를 오갈수 있더군요
감사합니다.

//게시판 답글 원글작성자에게 sms 발송
 function smss_board_reply(){
   $id = $this->id;
   $num = $this->num;
 //원글 작성자 게시판 테이블에서 아이디 가져오기
   $this->db->select("wr_user_id");
   $this->db->where('num', $num);
   $query = $this->db->get($this->id);
   $row1 = $query->row_array();
 //원글 작성자 users테이블에서 핸드폰번호 가져오기
   $this->db->select("mobile,nickname");
   $this->db->where('username', $row1['wr_user_id']);
   $query = $this->db->get('users');
   $row2 = $query->row_array();

   $data['snd_number'] = $this->session->userdata('mobile');//보내는사람 번호(답글작성자)
   $data['rcv_number'] = $row2['mobile'];//받는사람 번호(원글작성자)
   $data['sms_content'] = "{$row2['nickname']}님이 작성하신 게시글에 답글이 등록되었습니다.";//전송 내용
   return $data;
    }