웹마스터 팁
특정그룹회원에게 서비스 제공하기
2009.09.12 01:32
<?
define('__ZBXE__', true);
require_once('./config/config.inc.php');
$oContext = &Context::getInstance();
$oContext->init();
$logged_info = Context::get('logged_info');
$id = $logged_info->user_id;
?>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<?
if($logged_info)
{
echo("
로그인 하셨네요.^^
<br>$id 회원님이시네요.
");
foreach($logged_info->group_list as $key => $val) {
$a[]=$val;
}
$group_name='관리그룹';
if(in_array($group_name,$a) ) {
echo "관리그룹입니다.";
}
else{
echo " 관리그룹이 아닙니다";
}
}
else
{
echo("
로그인 해주셔야죠.^^
");
}
?>
XE의 경우 그룹설정을 여러가지를 할 수 있는데 설정된 그룹중에서 특정 그룹이 포함되어 있다면 조건문을 실행하게 하는 팁입니다.
핵심은 in_array() 함수가 되겠네요.
이 함수는 배열에 특정값이 있는지를 체크해 주는 함수 입니다.
위 소스는 외부페이지를 사용할경우 세션 공유를 위해서
define('__ZBXE__', true);
require_once('./config/config.inc.php');
$oContext = &Context::getInstance();
$oContext->init();
이부분이 선언된것입니다.
만약 XE 레이아웃에서 적용을 하고 싶다면 아래와 같이 이용하시면 됩니다.
<!--@if($logged_info)-->
{$logged_info->user_id}님이 로그인 하셨습니다.
<!--@foreach($logged_info->group_list as $key => $val)-->
{@$a[]=$val}
<!--@end-->
{@$group_name='관리그룹'}
<!--@if(in_array($group_name,$a) )-->
관리그룹입니다.
<!--@else-->
관리그룹이 아닙니다.
<!--@end-->
<!--@else-->
로그인을 해주세요.
<!--@end-->