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

표제작 관련 mysql구문 질문입니다.. 채택완료

용미엘 2년 전 조회 22,364

안녕하세요?

조직도를 좀 만들어보고 있습니다.

어찌어찌 해서 표를 만들어 db를 불러와 내용을 채우는데는 성공하였는데요, 다만 같은부서를 rowspan을 사용해서 하나로 묶고싶은데 잘 구현이 안되네요 ㅎ;;

1

 

2

경영지원팀

홍길동1

 

경영지원팀

홍길동1

경영지원팀

홍길동2

 

홍길동2

경영지원팀

홍길동3

 

홍길동3

경영지원팀

홍길동4

 

홍길동4

경영지원팀

홍길동5

 

홍길동5

 

현재는 표1 처럼 만들어져있구요, 표2처럼 만들고자 이것저것 시도해보는중입니다.

부서별로 2~3개정도의 팀이 있는데요, mysql 구문으로 구현이 가능할까요? 아니면 다른방법이 있다면 추천부탁드립니다..

 

</p>

<p><ul class="tabNav_tab tabnav">

                        <!--부서 카테고리(s)-->

                        <?php 

                            $sql = "select * from g5_or_master where or_id order by or_id asc";

                            $result = sql_query($sql);

                            $row    = sql_num_rows($result);

                            for ($i = 1; $row = sql_fetch_array($result); $i++){

                        ?>

                        <li><a href="#tab0<?=$i?>" class="active"><?php echo $row['or_subject'] ?></a></li>

                        <?php } ?>

                        <!--부서 카테고리(e)-->

                    </ul>

                    <div class="tabcontent">

                        <!--부서별 그룹화(s)-->

                        <?php

                            $sql = "select gr_id from g5_or_detail group by gr_id";

                            $result = sql_query($sql);

                            $row    = sql_num_rows($result);

                            for ($i = 1; $row = sql_fetch_array($result); $i++){

                        ?>

                        <div id="tab0<?=$i?>">

                            <div class="table-box">

                                <table class="table--min">

                                    <tr>

                                        <th class="belong line_no_left">소속</th>

                                        <th class="spot">직위</th>

                                        <th class="name">직원명</th>

                                        <th class="tel">전화번호</th>

                                        <th class="job">담당업무</th>

                                        <th class="mail line_no_right">이메일</th>

                                    </tr>

                                    <!--부서인원정보(s)-->

                                    <?php

                                        $sql_or    = "SELECT * FROM g5_or_detail where gr_id = $i order by or_order asc";

                                        $result_or = sql_query($sql_or);

                                        

                                        for ($j=1; $row_or = sql_fetch_array($result_or); $j++){

                                            

                                        ?>

                                    <tr>

                                        <td <span style="background-color:#e74c3c;">rowspan=""</span> class="belong line_no_left"><?php echo $row_or['or_belong'] ?></td>

                                        <td class="spot align_c"><?php echo $row_or['or_spot'] ?></td>

                                        <td class="name align_c"><?php echo $row_or['or_name'] ?></td>

                                        <td class="tel align_c"><?php echo $row_or['or_tel'] ?></td>

                                        <td class="job"><?php echo $row_or['or_job'] ?></td>

                                        <td class="mail line_no_right"><?php echo $row_or['or_email'] ?></td>

                                    </tr>

                                    <?php }  ?>

                                    <!--부서인원정보(e)-->

                                </table>

                            </div>

                        </div>

                        <?php } ?>

                        <!--부서별 그룹화(e)-->

                        </div>

                    </div></p>

<p>

 

현재 코드입니다.

rowspan=""class="belong line_no_left">

rowspan 부분에 group by 등을 사용해서 수를 넣어주고싶은데 어렵네요;

 

조언 부탁드립니다.

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

답변 3개

채택된 답변
+20 포인트

php에서 loop 돌면서 하는 것은 좀 복잡해서

https://stackoverflow.com/questions/46344928/how-to-merge-cells-with-equal-values

자바스크립트로 하는 방법입니다.

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

답변에 대한 댓글 1개

용미엘
2년 전
감사합니다.
알려주신 ajax외에 동적테이블 셀병합하는게 자바스크립트에 있더라구요. 덕분에 알게되어 구현했습니다.
감사합니다.

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

n
2년 전

추가 피해자 방지 https://sir.kr/conflictconsultation/245" rel="nofollow noreferrer noopener" target="_blank">https://sir.kr/conflictconsultation/245

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

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

유찬아빠
     $sql_or    = "SELECT * FROM g5_or_detail where gr_id = $i order by or_order asc";
     $result_or = sql_query($sql_or);

       $rowspan = sql_fetch(" select count(*) as cnt from g5_or_detail where gr_id = $i ");

"class="belong line_no_left"> 

 

이렇게 하시면 되지 않을까요?

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

답변에 대한 댓글 1개

용미엘
2년 전
해당방법도 좋은것 같습니다.
시간내주셔서 감사합니다.

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

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

로그인