묻고답하기
송동우님~
2012.01.02 19:59
외부 페이지에서 회원 정보를 보여주게 하려고 합니다.
일단 이렇게 만들어 보았습니다.
<?
$uid = $_GET['user_id'];
$conn=mysql_connect("localhost","아이디","비밀번호");
mysql_select_db("DB명",$conn);
$query="select * from xe_member where user_id='$uid'";
$result=mysql_query($query) or die("$query".mysql_error());
while($row=mysql_fetch_array($result))
{
echo $row[user_id];이하 생략
}
?>
한데 이러면 문제가, http://주소/test.php?user_id=아이디 이런식으로 접속하는 것이니
다른 회원의 아이디를 치면 정보가 다 보이게 됩니다.
게다가 페이지 수정 > 내용 직접 추가에서 <a href="http://주소/test.php?user_id=$logged_info->user_id">보러가기</a>
를 해도 정상 작동하지 않구요.
그래서 묻고답하기 게시판에서 한참 검색하다가
<?
define('__ZBXE__', true);
require_once('./config/config.inc.php');
$oContext = &Context::getInstance();
$oContext->init();
$logged_info = Context::get('logged_info');
?>
이걸 최상단에 넣으면 외부페이지에서도 회원정보를 가져올 수 있다는 것을 알게 되었습니다.
그래서
<?
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;
echo $id;
?>
를 해봤는데 아무것도 뜨지 않습니다. echo $id 아래에 echo "테스트"; 를 넣으면 테스트만 정상 출력되더군요.
제가 뭘 잘못한 걸까요?
해당 php파일의 경로는 public_html/test.php이고
config.inc.php 파일의 경로는 public_html/config/config.inc.php입니다.
답변 해 주시면 정말 감사하겠습니다.
* 추가로 궁금한 것이 있는데
<html>
<head>
</head>
<body>
<!--@foreach($logged_info->group_list as $key => $val)-->
<h2>$val</h2>
<!--@if($val=="Manager")-->
관리자일 경우
<!--@end-->
<!--@end-->
</body>
</html>
이렇게 작성했는데 $val의 값이 아니라 그냥 $val이라는 텍스트가 뜹니다.
또 "관리자일 경우" 라는 메시지가 모든 그룹과 로그인하지 않은 사용자에게도 뜹니다.
무엇이 잘못된 것인가요?
오늘 처음 건드려 보는 거라 모르는게 참 많네요. 귀찮게 해드려 죄송할 따름입니다 ㅠㅠ
댓글 1
-
송동우
2012.01.03 04:17
-
뮤
2012.01.04 00:38
친절한 답변 감사합니다. 말씀 듣고 그냥 위젯 수정해서 하니 잘 됩니다 ㅎ 페이지 만들어서 하는것도 잘 됐구요~
글쓴이 | 제목 | 최종 글 |
---|---|---|
XE | 공지 글 쓰기,삭제 운영방식 변경 공지 [16] | 2019.03.05 by 남기남 |
초보백수 | 썸네일 크기 지정 [1] | 2008.11.18 by 센세이션 |
칼잇으마 |
3단 구성시 레이아웃이 어긋나는 건 왜그런건가요?
[1]
![]() | 2008.11.18 by 느까끼 |
ㅇㅋ | 메뉴 이동시 메뉴 항목 사라졌는데 어떻게 복구 하나요? [2] | 2008.11.18 by ㅇㅋ |
폭간 | php.ini 설정까지 한후 첨부파일제한 부분 [3] | 2008.11.18 by 비나무 |
김민석354 | zbxe에서 zb4로 [1] | 2008.11.18 by SMaker |
빅플래닛 | 로그인 페이지 관련 질문입니다. | |
김영민 |
익스플로러, 파이어폭스 화면상 차이 도움좀.. ㅠㅠ..
[2]
![]() | 2008.11.18 by 김영민 |
담비♡ | 이모티콘 사용시 [1] | 2008.11.18 by 센세이션 |
빅플래닛 | 위젯이 안됩니다. [1] | 2008.11.18 by 백성찬 |
이지연 |
파일첨부를 하면 아래와 같은 오류가 뜹니다
[1]
![]() | 2008.11.18 by 센세이션 |
작성자 |
홈피 로고가 안떠요,,,ㅜㅜ
[1]
![]() | 2008.11.18 by 센세이션 |
jjoint | 백성찬님~ 위젯질문이요^^ [1] | 2008.11.18 by 백성찬 |
팔뚜기 | 글씨체 변경하는법좀가르쳐주세요! [1] | 2008.11.18 by bluepark |
zeroboardxe |
게시판 글쓰기 HTML 코드 깔끔하게 붙이는 방법 문의합니다.
[1]
![]() | 2008.11.19 by 컨츄리야옹 |
우리아기 | 다운로드 가 이상하게 비회원이 안되네요..... [3] | 2008.11.19 by 센세이션 |
맛건빵 |
게시판 글 내용 색깔과 작성자 이름 색깔 바꾸고 싶은데...ㅜ.ㅜ
![]() | |
ddddffdfd | 게시판의 카테고리(분류)에 이미지or태그 적용하는 방법 질문! [1] | 2008.11.19 by 센세이션 |
맛건빵 |
게시판 글 내용 색깔과 작성자 이름 색깔 바꾸고 싶은데...ㅜ.ㅜ
![]() | |
xefri | index.php 문제 [2] | 2008.11.19 by xefri |
쭈늬 | 자꾸 잘 안되네요 [1] | 2008.11.19 by 느까끼 |
1.
config.inc.php 파일의 경로가 제대로 잡혀있다면
출력이 되어야 정상입니다.
echo "<pre>";
print_r($logged_info);
echo "</pre>";
xe에 로그인 되어 있는 상태에서
이걸 찍어서 결과가 제대로 나오나 한 번 보세요
2.
사용하시는 test.php파일은 모듈화하지 않은, 즉 xe와는 전혀 상관이 없는 파일입니다.
보통 xe에서 말하는 외부파일은 관리자페이지의 외부페이지 메뉴에서 해당파일을 연결한 페이지(외부페이지)를 말합니다.
이렇게 생성(연결)된 외부페이지는 xe파일처럼 해당정보를 이용할 수 있고, 템플릿언어를 사용할 수 있습니다.
하지만
전혀 상관없는 외부파일은 템플릿언어를 사용해도 당연히 안되겠죠
html 파일에 php를 아무리 작성해 봐야 작동하지 않는 것처럼........
<!--@ foreach($logged_info->group_list as $key => $val)-->
이런 것은 템플릿 언어입니다.
그리고 출력을 할 때도 $val 이것이 아니라 {$val} 이렇게 되어야 하지만,
xe와 연결이 된 외부페이지에서 가능한 것입니다.
템플릿 언어를 사용하고자 한다면 관리페이지에서 외부페이지로 연결을 하고
아니면 php언어로 해야 합니다.