현재 외부페이지에 php 파일을 작성하고 Ajax를 사용하여 DB 데이터를 넣고 있습니다.
파일 목록
- index.php
- insert_DB.php
여기서 궁금한게 있는데
index.php 는 외부페이지 파일이라서
define('__ZBXE__', true);
define('__XE__', true);
require_once $_SERVER['DOCUMENT_ROOT'].'/config/config.inc.php';
$oContext = &Context::getInstance ();
$logged_info = Context::get ( 'logged_info' );
해당 소스가 적용이 되는데
insert_DB.php는 외부파일이 아닌 순수하게 DB를 입력하는 query문 작성이라서 해당 소스가 적용이 안되네요.
(왜 자꾸 user_id 값이 빈값인지 한참 고민했음)
이 부분에서 사용자 정보를 가져오면 좀 더 좋을거 같은데
이 부분이 불가능하면 ajax에서 데이터를 넘길때 user_id를 넘기는 방법 밖에 없는건가요?
어떤 php 파일이라도 저렇게 하면 다 됩니다. 단, $oContext->init(); 이 빠졌네요.
XE에서 외부페이지 형식으로 인클루드하면 이미 그게 다 되어 있는 상태이니 중복으로 실행하면 오히려 문제가 생길 가능성만 높아지고, 그냥 $logged_info를 바로 불러오면 됩니다. 그렇지 않고 단독으로 실행되는 파일이라면 define, include, Context init까지 모두 필요합니다.