ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 마이 페이지 (My Page) 만들기 - 2
    웹개발 (킴스큐Rb) 2011. 6. 29. 19:32
    킴스큐Rb에서 마이 페이지 만들기 2편

    1편에서 데이터를 준비하는 프로세스를 모두 마쳤으므로
    이제 쉽게 불러다가 화면에 뿌리기만 하면 되기는 무슨...
    PHP를 모르니 이번에도 난관에 부딪힌다.


    1. 문제
    • 학생(또는 학부모)의 마이 페이지는 자신이 수강하는 게시판을 보여주면 된다고 치자.
    • 강사의 마이 페이지는??
    • 관리자의 마이 페이지는??

    2. 정리
    • 강사의 마이 페이지는 자신의 게시판을 카테고리 선택 없이 보여주기로 하자.
      (강사 1인에 게시판 1개 원칙이 있기에 가능한 부분)
    • 관리자의 마이 페이지는 모든 게시판의 최근 글을 긁어다가 보기로 하자.
      (근데 이게 쉽지는 않을 듯)

    3. 조사
    • 회원관리 모듈의 기본 설정값을 저장하는 파일 찾고~
      rb/modules/mymbr/var/var.join.php
    • 마이 페이지는 저번에 찾아 놨고~
      rb/modules/mymbr/lang.korean/pages/_pc/mypage/main.php

    4. 발적화

    PHP를 모르는 건 문제가 아님. 인생은 실전이야, 배워가며 만든다!는 정신으로 Go.

    • 마이 페이지에 추가~ (학생은 최소 한 개의 강좌를 수강해야 함)
      <?php if($my['level'] < 13) { // 학생이면 ?>
          <h5><?php echo $my['teacher1']?> - <?php echo $my['class1']?></h5>
          <iframe width="800" height="300" frameborder="0" scrolling="yes" marginheight="0" marginwidth="0" src="/rb/?m=bbs&bid=<?php echo $my['teacher1']?>&cat=<?php echo $my['class1']?>&iframe=Y"></iframe>
             
          <?php if($my['teacher2']):?>
              <h5><?php echo $my['teacher2']?> - <?php echo $my['class2']?></h5>
              <iframe width="800" height="300" frameborder="0" scrolling="yes" marginheight="0" marginwidth="0" src="/rb/?m=bbs&bid=<?php echo $my['teacher2']?>&cat=<?php echo $my['class2']?>&iframe=Y"></iframe>
          <?php endif?>
          <?php if($my['teacher3']):?>
              <h5><?php echo $my['teacher3']?> - <?php echo $my['class3']?></h5>
              <iframe width="800" height="300" frameborder="0" scrolling="yes" marginheight="0" marginwidth="0" src="/rb/?m=bbs&bid=<?php echo $my['teacher3']?>&cat=<?php echo $my['class3']?>&iframe=Y"></iframe>
          <?php endif?>
          <?php if($my['teacher4']):?>
              <h5><?php echo $my['teacher4']?> - <?php echo $my['class4']?></h5>
              <iframe width="800" height="300" frameborder="0" scrolling="yes" marginheight="0" marginwidth="0" src="/rb/?m=bbs&bid=<?php echo $my['teacher4']?>&cat=<?php echo $my['class4']?>&iframe=Y"></iframe>
          <?php endif?>
      <?php } elseif($my['level'] == 13) { // 선생님이면 ?>
          <h5>My Classes</h5>
          <iframe width="800" height="400" frameborder="0" scrolling="yes" marginheight="0" marginwidth="0" src="/rb/?m=bbs&bid=<?php echo $my['name']?>&iframe=Y"></iframe>
      <?php }?>

    $my는 Rb에서 가장 중요한 변수 중 하나이다. 로그인 한 사용자의 정보를 가지고 있는 배열로,
    $my['id'], $my['name'], $my['point'] 등으로 로그인 시 Rb가 미리 읽은 해당 값을 사용한다.

    기타 Rb에서 사용하는 변수들은 개발자 가이드의 개발전 숙지사항에서 확인할 수 있다.

    • 마이 페이지에서 원하지 않는 탭을 보이지 않게~ (1: 보이기, 0: 숨기기)
      $d['member']['mytab_post'] = "0";
      $d['member']['mytab_comment'] = "0";
      $d['member']['mytab_oneline'] = "0";
      $d['member']['mytab_simbol'] = "1";
      $d['member']['mytab_scrap'] = "1";
      $d['member']['mytab_friend'] = "1";
      $d['member']['mytab_paper'] = "1";
      $d['member']['mytab_point'] = "0";
      $d['member']['mytab_log'] = "0";
      $d['member']['mytab_info'] = "";
      $d['member']['mytab_pw'] = "1";
      $d['member']['mytab_out'] = "";

      (탭에 해당하는 실제 코드는 다음 파일에
      rb/modules/mymbr/lang.korean/pages/_pc/mypage/_menu.php)
    • 추가로 불필요한 코드를 제거~
      (기본 회원관리 모듈을 클로닝 했기 때문에 '내가 등록한 게시물', '내 게시물에 달린 댓글' 등의 코드가 존재)

    이제 학원생이 로그인 하면 수강하는 수업 게시판이 보이고, 선생님이 로그인 하면 자신의 게시판이 보이도록 마이 페이지의 프로토 타입을 마련하였다. 요구에 따라 앞으로 수정 및 기능 추가가 보너스로 남아 있다.
Designed by Tistory.