이렇게 출력하고싶습니다 ㅠㅠ 도와주세요
본문
<?
$wr_id = "1|2|3|4|5|6|7|8|9|10"; // 게시물의 번호 1부터 10까지
$wr_id_chk = explode("|",$wr_id); // 게시물 번호를 | 기준으로 잘라서 배열에 담는다.
$wr_id_len = count($wr_id_chk); // | 를 기준으로 잘라넣은 배열의 개수
if(!empty($wr_id_chk[0])){ //배열에 값이 있으면 아래 코드 실행
// 배열의 개수만큼 반복문을 돌리면서 wr_id로 쿼리로 값 가져옴
for($i=0; $i<$wr_id_len; $i++){
// 한개의 행을 가져옴
$sql = "select * from g5_write_test where wr_id ='{$wr_id_chk[$i]}' "; // 배열의 0번째(wr_id가 1임) 방부터 넣어서 쿼리를 실행
$row = sql_fetch($sql);
echo "제목:".$row['wr_subject']."<br>";
echo "내용:".$row['wr_content']."<br>";
}
}
?>
현재는 출력시에
제목:aaa
내용:wr_id(1)내용입니다.
제목:bbb
내용:wr_id(2)내용입니다.
제목:aaa
내용:wr_id(3)내용입니다.
제목:bbb
내용:wr_id(4)내용입니다.
제목:aaa
내용:wr_id(5)내용입니다.
제목:bbb
내용:wr_id(6)내용입니다.
제목:aaa
내용:wr_id(7)내용입니다.
제목:bbb
내용:wr_id(8)내용입니다.
이런식으로 상위 출력과같이 한개의 행씩 읽어서 출력되고있습니다.
여기서 한가지 질문있습니다.ㅠ
제목이, aaa , bbb 이러한 규칙이 있습니다.
공통된 제목이라면 아래와 같이 출력하고 싶습니다.
제목:aaa
내용:wr_id(1)내용입니다.
내용:wr_id(3)내용입니다.
내용:wr_id(5)내용입니다.
내용:wr_id(7)내용입니다.
제목:bbb
내용:wr_id(2)내용입니다.
내용:wr_id(4)내용입니다.
내용:wr_id(6)내용입니다.
내용:wr_id(8)내용입니다.
이렇게 제목이 같다면 한번만 출력
이후의 내용을 쭉 같이 뽑아 오고싶은데
쿼리나 php에서 어떤식으로 처리를 해야할지 머리가 안돌아가네요 ㅎㅎ
팁좀 부탁드리겠습니다~^^
답변 4
if ($wr_id) {
$wr_id_chk = ' in (' . str_replace('|', ',', $wr_id) . ')';
$sql = " select wr_subject, group_concat(wr_content SEPARATOR '<br>') wr_content from g5_write_test where wr_id $wr_id_chk group by wr_subject";
$result = sql_query($sql);
while ($row = sql_fetch_array($result)) {
echo '제목:'.$row['wr_subject'] . '<br>';
echo '내용:'.$row['wr_content']. '<br>';
}
}
for($i=0; $i<$wr_id_len; $i++){
// 한개의 행을 가져옴
$sql = "select * from g5_write_test where wr_id ='{$wr_id_chk[$i]}' ";
$row = sql_fetch($sql);
if(여기서 i를 짝수 나 홀수로 나누어서 나머지값이 0이면 ){
$aaaa.=제목.내용."<br>";
}else{
$bbbb.=제목.내용."<br>";}
}
그러면 6보다작으면 aaa
6보다 크고나 10보다 작으면 bbb
10이면 aaa 하면되죠
아니면요 이러게 해두되요 그누보드로 만드시는 거라고 가정하고요
그누보드에는 게시판 기능 둥 에 글쓰기를 할때에 카테고리를 생성하는 기능 이있어요
거기서 제목을 넣어놓고 글쓰실때 미리 선택을 하면되죠
그런데
제목이 미리 넣을 수없다고 생각되면
게시판 글쓰기를 할때에 DB 테이블의 여분 필드에 따로 제목을 미리 넣어놓고
그조건으로 출력 조건을 만들어도 되요