묻고답하기

* 해당 내용은 게시판 스킨에서 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 남기남
slkaw 이런 레이아웃 어디없나요 / .? [1] file 2014.05.14 by XE힘들당휴
qwqwwewe 웹개발 질문좀요 [3] 2014.05.14 by qwqwwewe
김재호491 급합니다...영어게시판 따로 설치 방법이 궁금합니다. [1] 2014.05.14 by mindpainter
riri_ 확장 컴포넌트에서 등록한 이미지가 자동리사이즈 되지 않을때 [11] 2014.05.14 by 애니즌
PKSon 게시판 생성 도저히 안되네요. [2] 2014.05.14 by B-Nation
임상수757 Pc접속시 A 사이트 모바일 접속시 B사이트 설정 방법 [1] 2014.05.14 by 똑디
클린베2 플래시 파일을 첨부하면 사진처럼 뜹니다. [2] file 2014.05.14 by 클린베2
꿈꾸는SW 관리자 페이지 접속이 않됩니다. [2] 2014.05.14 by 빽짱구
빽짱구 1.7.5에서 비밀번호 수준 [2] file 2014.05.14 by 빽짱구
oscarmike 큰일났습니다 [15] 2014.05.14 by teguh100
slkaw 누리고게시판 수정.....질문 file  
xe마스터즈 롤링위젯  
아담하와 한 계정 다중 도메인시 문제점. 도와주세용~ [5] 2014.05.14 by 아담하와
D라인1 관리자계정에 들어갈수가없습니다. [2] 2014.05.14 by Double'U'
제로보드굿짱 프로필 사이즈 확대? [8] 2014.05.14 by 제로보드굿짱
Maria 내용직접입력 위젯페이지 질문 [3] file 2014.05.14 by 똑디
홍쌈다dfej 다른 레이아웃 설정이안됩니다!! 서버문제인가요?  
제로보드굿짱 비밀글 설정어떻게하나요? [2] 2014.05.14 by 제로보드굿짱
임실치즈 file 폴더 권한을 707로 변경후 다시 755로 변경.. [7] 2014.05.14 by Luatic™
오락실주인 DB 접속 오류 .... [2] file 2014.05.14 by 오락실주인
alljoy 1.7.5 tar [2] 2014.05.14 by alljoy
박철수962 사이트맵에서 메뉴 추가가 안됩니다. [1] 2014.05.14 by XE힘들당휴
oscarmike 추천/비추천을 누르면 포인트를 지급받는데, 일정기간이 지나면 지급받지 못하게 하려면 어떻게 해야하나요? [2] 2014.05.14 by oscarmike
봉드기 게시판 상단내용에 if 가 가능한가요? [1] 2014.05.14 by XE힘들당휴
hanvitbf 아이디+도메인.com/xe에서 [1] file 2014.05.14 by XE힘들당휴
어라얼랑 회원 추가 정보를 이용한 포워딩 문의 드립니다 [2] 2014.05.14 by 어라얼랑
Migguragi XE cannot connect to DB. 이 메세지 홈피에 뜨는분 [2] 2014.05.14 by Double'U'
Aslan 도무지 모르겠네요...제발 도와주세요 ㅜㅠ [3] 2014.05.14 by Aslan
mAKEkr 게시물의 첨부된 첨부파일 각각의 썸네일을 가져오는법이 있나요? [13] 2014.05.14 by 애니즌
콩까기 이 embed는 화이트리스트에 뭘로 추가해야 본문에 나올까요? [4] 2014.05.14 by 콩까기