묻고답하기

* 해당 내용은 게시판 스킨에서 read.html or read_document.html 에 해당하는 내용입니다.




1번 게시판에서


2번 게시판의 정보를 불러오고 싶습니다.



단순히 불러오는 것이 아니라


확장변수 조건에 맞는 경우 불러오게 하고 싶습니다.



즉 2번 게시판의 root라는 확장변수 값이 apple인 게시물을 불러오는 것이지요..



우선 해당 기능은 구현하긴 했습니다만...(잘되긴 합니다.)


뭐랄까... 너무 여러번 쿼리를 날리는 것 같아서... 이래도 되는 건지...


선구자분들의 의견을 듣고 싶습니다.


문제가 없으면 상관 없을텐데.. 아무튼... 해당 코드를 다듬을 수 있는지 궁금합니다.


$prd->getExtraEidValueHTML('확장변수ID');


이런식으로 사용하는 건 안되더군요..-_-;;



가장 좋은 방법은.. $document_list처럼 다른 게시판 정보를 출력할 것을 담을 수 있다면


가장 베스트이지 않을까.. 합니다만..


해당 방법을 모르겠군요..ㅡ.ㅜ.


고견 부탁드립니다.





{@
			//대상 게시판 mid
			$parent_mid = 'test';

			$oDB = &DB::getInstance();
			$query = $oDB->_query('select module_srl from xe_modules where mid="'.$parent_mid.'"');
			$module = $oDB->_fetch($query);

			//게시판 srl값
			$module_srl = $module->module_srl;

			//타겟 eid(확장변수id)
			$target_eid = 'root';

			// 뽑아올 확장변수 값의 기준..
			$target_id = 'apple';

			$oDB = &DB::getInstance();
			// 확장변수에서 모듈값, 확장변수 id, 확장변수 값 비교해서 가져오기
			$query = $oDB->_query('select document_srl from xe_document_extra_vars where module_srl="'.$module_srl.'" and eid="'.$target_eid.'" and value="'.$target_id.'"');
			// 가져온 값을 target_document로 저장
			$target_document = $oDB->_fetch($query);

		}

		<!-- target_document를 출력하기 위해 뿌림 -->

		<!--@foreach($target_document as $document_srl => $cont)-->
		{@
			$oDB = &DB::getInstance();
			// 게시판 문서 정보를 가져옴
			$query = $oDB->_query('select * from xe_documents where document_srl="'.$cont->document_srl.'"');
			$prd = $oDB->_fetch($query);

			// 확장변수 cv의 값을 가져옴
			$query = $oDB->_query('select value from xe_document_extra_vars where document_srl="'.$cont->document_srl.'" and eid="cv"');
			$cv = $oDB->_fetch($query);
			$cv = $cv->value;

			// 확장변수 thumb 값을 가져옴
			$query = $oDB->_query('select value from xe_document_extra_vars where document_srl="'.$cont->document_srl.'" and eid="thumb"');
			$thumb = $oDB->_fetch($query);
			$thumb = $thumb->value;

			// 확장변수 cvlink 값을 가져옴
			$query = $oDB->_query('select value from xe_document_extra_vars where document_srl="'.$cont->document_srl.'" and eid="cvlink"');					$cvlink = $oDB->_fetch($query);
			$cvlink = $cvlink->value;

			// cvlink값이 있으면 cv를 링크로 감싸줌
			if($cvlink)	$cv = '<a href="'.$cvlink.'" />'.$cv.'</a>';
		}

		<div class="list">
			<p>
				<img src="{$thumb}" />
			</p>
			<p>{$prd->title} ({$cv})</p>
			<p>{$prd->content}</p>
		</div>
		<!--@end-->




조금 소스를 줄여봤습니다..


foreach를 이용해서~ if으로 처리했는데.. 역시 이것도 뭐랄까 깔끔하다는 느낌은 나지 않네요..ㅡ.ㅜ



{@
			//대상 게시판 mid
			$parent_mid = 'test';

			$oDB = &DB::getInstance();
			$query = $oDB->_query('select module_srl from xe_modules where mid="'.$parent_mid.'"');
			$module = $oDB->_fetch($query);

			//게시판 srl값
			$module_srl = $module->module_srl;

			//타겟 eid(확장변수id)
			$target_eid = 'root';

			// 뽑아올 확장변수 값의 기준..
			$target_id = 'apple';

			$oDB = &DB::getInstance();
			// 확장변수에서 모듈값, 확장변수 id, 확장변수 값 비교해서 가져오기
			$query = $oDB->_query('select document_srl from xe_document_extra_vars where module_srl="'.$module_srl.'" and eid="'.$target_eid.'" and value="'.$target_id.'"');
			// 가져온 값을 target_document로 저장
			$target_document = $oDB->_fetch($query);

		}

		<!-- target_document를 출력하기 위해 뿌림 -->

		<!--@foreach($target_document as $document_srl => $cont)-->
		{@
			$oDB = &DB::getInstance();
			$query = $oDB->_query('select * from xe_documents where document_srl="'.$cont->document_srl.'"');
			$prd = $oDB->_fetch($query);

			$query = $oDB->_query('select value, eid from xe_document_extra_vars where document_srl="'.$cont->document_srl.'"');
			//해당 게시판의 확장변수를 가져옴
			$extra = $oDB->_fetch($query);
		}

		<!-- foreach로 반복으로 돌려서~ -->
		<!--@foreach($extra as $eid => $exvar)-->

			<!-- 원하는 값을 매칭해서 변수로 저장~ -->
			<!--@if($exvar->eid=='cv')-->
				{@ $cv = $exvar->value; }
			<!--@else if($exvar->eid=='cvlink')-->
				{@
					$cvlink = $exvar->value;
					$cv = '<a href="'.$cvlink.'" />'.$cv.'</a>';
				}
			<!--@else if($exvar->eid=='thumb')-->
				{@ $thumb = $exvar->value; }
			<!--@else-->

			<!--@end-->
		<!--@end-->

		<div class="list">
			<p>
				<img src="{$thumb}" />
			</p>
			<p>{$prd->title} ({$cv})</p>
			<p>{$prd->content}</p>
		</div>
		<!--@end-->

글쓴이 제목 최종 글
XE 공지 글 쓰기,삭제 운영방식 변경 공지 [16] 2019.03.05 by 남기남
zetix 랜덤? 배너광고 질문입니다  
나의해 이미지 리사이즈 문제인데 조언부탁드립니다 file  
영감940 개인홈페이지 SQL작업문의 [1] 2014.05.20 by Double'U'
웹-빈 제로보드 설치에 대해서 알려주세요 ㅜㅜ [1] 2014.05.20 by DECLK
애니즌 php function이 없는 것을 호출하면... [17] 2014.05.20 by 애니즌
MC마초 메인페이지 레이아웃 메뉴 먹힘 현상 및 서브메뉴  
금마초딩1 사이트 레이아웃 틀어짐 [5] 2014.05.20 by 금마초딩1
ggem24 스케치북 링크게시판 (링크 값이 없을때 blank) [2] 2014.05.20 by ggem24
도메인8295 쿡래빗 레이아웃을 사용중인데 레이아웃이 이상합니다; [3] 2014.05.20 by 숭숭군
또별 SocialXE에서 Client Token 이 어떻게 생겼나요? [2] 2014.05.20 by 또별
제갈량1 누리고 삭제는 어떻게 하나요?  
클라우드유2 링크를 통해 접속하면 a 403 Forbidden error 가 발생합니다.  
나만의너 회원 가입 후 이동할 페이지 지정하는 방법 좀 알려주세요  
팔공산 모바일에서 메뉴가 나오지를 않네요??? [2] file 2014.05.20 by 팔공산
석전리바이브 지금 xe포럼에서 support메뉴를 눌렀을때 [3] 2014.05.20 by 퍼니엑스이
hughlory 회원 가입 (invitation only?) 관련 질문  
나의해 XE 1.75버전 프리티포토 애드온 안되나요?? [9] 2014.05.19 by 애니즌
나의해 코드 하나만 봐주세요! [29] 2014.05.19 by 나의해
good499 텍스타일처럼 111.xe.com 222.xe.com 같은 도메인을 [14] 2014.05.19 by Lin-e
Lin-e 텍스타일 (혹은 업글타일)에 권한 주는법?  
똥냥이1 회원가입 후 폴더 생성 시 어떤 파일 수정하나요 ? [1] 2014.05.19 by 똥냥이1
yubin0725 위젯null현상 질문 제발요 ㅠㅠ [5] file 2014.05.19 by 애니즌
publicum iframe 세로 방향 짤림문제 + 외부 html은 어떻게 불러오나요? [3] file 2014.05.19 by publicum
카루에몽v 없는 게시글에 반복 접근이 감지된다고 합니다.  
젠장할 메인페이지 위젯에 대해서 질문드립니다. [8] file 2014.05.19 by 나의해
모울 운영하고 있는 홈페이지에, 갑자기 이상한 회원 수가 급격하게 늘었습니다ㅠㅜ [7] file 2014.05.19 by 마야
Wnepddkqjelqjel 신디케이션 연동관련 문의드립니다. [3] 2014.05.19 by 나의해
도메인8295 리그 오브 레전드 (롤) 전적검색 기능을 추가하고싶습니다.  
껭끼 alternative 다르다고 하네요 도와주세요ㅠ [3] 2014.05.19 by 나의해
석전리바이브 위젯이 안보이는이유가뭘까요? [1] 2014.05.19 by 銀童