Admin/Xpress Engine 2008. 12. 3. 09:41

외부프로그램(페이지)에서 zbxe 로그인 정보 연동하기

 

원래 만들어서 쓰던 프로그램이 있는데 zbxe와 연동하려고 찾아보니, 질문만 있고 답변이 없더군요.
간단하게 만들어봤습니다.

세션만 불러오기 때문에 0.0002초만 실행시간에 추가 됩니다.
zbxe를 사용하는 중이라는 가정하에 이미 생겨 있을 session 폴더 생성 부분은 빼버렸습니다.
zbxe는 /home/hosting_users/mytravian/www/ 에 설치되어 있고, 외부프로그램은 /home/hosting_users/mytravian/www/mt/ 에 존재하고 있습니다.
저같은 경우 회원 추가정보로 타 사이트의 ID와 Password를 받고, 이 값으로 타 사이트의 화면을 긁어오는데 씁니다.

외부 프로그램의 맨 윗줄에 다음과 같이 추가합니다.

$zbxe_server_path = "/home/hosting_users/mytravian/www/"; // 관리자 페이지에 설치된 경로 부분  
    $zbxe_url_path = "http://mytravian.net/"; // zbxe가 설치된 URL  
      
    if(!ini_get('session.auto_start')) {  
        session_cache_limiter('no-cache, must-revalidate');  
        ini_set("session.gc_maxlifetime", "18000");  
        if(is_dir($zbxe_server_path."files/sessions")) session_save_path($zbxe_server_path."files/sessions/");  
        session_start();  
    }  
    if(!$is_logged){        
      Header("Location:{$zbxe_url_path}?mid=outlogin&act=dispMemberLoginForm"); // 로그인 화면으로 이동  
      exit(1);  
    }  
    else{ // 이 안에 원래 프로그램의 내용을 넣습니다. else 구문은 삭제해도 무방합니다.  
       $no = $logged_info->member_srl;  
       $id = $logged_info->user_id;  
       $name = $logged_info->user_name;  
       $nick = $logged_info->nick_name;  
       $email = $logged_info->email_address;  
       $home = $logged_info->homepage;  
       $birth = $logged_info->birthday;  
       $is_admin = $logged_info->is_admin;  
        
       //로그인한 회원의 정보를 출력;;  
       echo $no; // 회원 번호  
       echo "\n<br />\n";  
       echo $id; // 아이디  
       echo "\n<br />\n";  
       echo $name; // 이름  
       echo "\n<br />\n";  
       echo $nick; // 닉네임  
       echo "\n<br />\n";  
       echo $email; // 이메일  
       echo "\n<br />\n";  
       echo $home; //홈페이지  
       echo "\n<br />\n";  
       echo $birth;//생일  
       echo "\n<br />\n";  
        
       if($is_admin == "Y") // 관리자 일 경우  
       echo "나는 관리자 입니다.";  
       else // 관리자가 아닐 경우  
       echo "나는 관리자가 아닙니다.";  
    }        



===================================
utf-8관련 잘못이해했던 부분이 많아 수정합니다..
초보님들 언어 설정을 잘못해 초반에 삽질을 많이 하는데 도움되었음 하네요

제로보드는 utf-8로 동작하니 이제부터 파일저장시에는 utf-8로 변환해줘야 합니다.
저는 울트라에디트를 쓰니 파일-변환에서 utf-8 (unicode로편집) 으로 설정합니다.
아래쪽 바에 U8-DOS 또는 U8-UNIX 라고 나와야 해요

그리고 제로보드파일말고 외부문서A에는 상단에
<meta http-equiv='content-type' content='text/php; charset=utf-8'>
삽입합니다.

이 간단한거 몰라서 삽질엄청했어요..ㅜㅜ
그럼 즐프~
 
 
즉 글쓴이님 말씀은 로그인정보 함수를
html 외부페이지에서 부르는것이 가능하니깐, echo로 필요한 상황을 잘 대처해서 꾸며보라는 말씀인것같습니다. (아니시다면 죄송!!;)
그리고 html 문서에서 charset=euc-kr 로 되어있으니 그 부분을 utf-8로 바꿔서 사용하라는 말씀입니다.
포스팅 포스팅이 유익 하셨다면 Ctistory.com을 구독하세요->

Posted by phil
,