묻고답하기

* 해당 내용은 게시판 스킨에서 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 남기남
민트향기 음.. 그냥 del키로 access파일의 로그목록을 싸그리 지워버렸거든요..  
호야 일정글 이상에 글 길이를 짤라낼려면 어떻게 하면돼나요??  
김석형 winapm 설치 후에 외부에서 접속 [2] 2007.08.10
권규원 플래시MX로 메뉴 만들려고 하는데 너무 힘듭니다..고수님들..조언점..ㅠㅠ  
REDsky ESC키가 먹게 하고 싶습니다. [2] 2007.08.10
김진혁 flash 에서 스크롤바 구현에 대해 문의 드립니다. [1] 2007.08.10
Nsoma21c 노프레임 홈페이지에 관한 질문입니다. [2] 2007.08.10
문희열 웹정체 글자가 ㅁㅁㅁ로 보여요... [1] 2007.08.10
starry apache실행중에 이런 오류가 납니다.  
:: 화니 :: 게시물 갯수 표시하는 방법  
김인호 링크 관련 질문입니다. [2] 2007.08.10
☺okoru 크롬리스창을 최소화 시키면 BGM이 꺼집니다.  
램프의바바 nzeo 홈피처럼 윈도우 창 사이즈가 줄어들어도 홈피사이즈도 같이.. [3] 2007.08.10
류진곤 리사파파님의 APMSETUP 에러....접근거부...ㅡㅡ;  
정우영 외부로그인... 그리고 최근게시물  
쥬로 프레임 화면 전환시 주위가 껌벅이는 현상?  
나르미스 php 에서 q3plugin 같은 기능은 안되나요? [3] 2007.08.10
이순미 일러스트 질문이요... [2] 2007.08.10
눔곰 버튼 롤어버 할때 알파값 주는것.. [1] 2007.08.10
날개 목록형 게시판말고 바로 보여지는 게시판 없나요?  
김현지 php 에서 @ 가 어디에 쓰이는건지요 그리고 무슨뜻인지... [2] 2007.08.10
박군의그녀 desktop.ini 파일이요 [1] 2007.08.10
안희택 메뉴이미지를 링크시 나오는 선 없애는 방법좀 갈켜주세여.. [5] 2007.08.10
김용희 php가 저의 컴퓨터에서 실행이 않되요.. [1] 2007.08.10
꼬께랑 로그인, 로그아웃 소스를 login.html이랑 outlogin.html의 어느부분에 넣는거에요?  
전종화 포토샵 CS 한글 bold [1] 2007.08.10
cool 포토샵에서 드롭쉐도우 사용시 질문입니다. ㅡ,.ㅜ [1] 2007.08.10
Seeker span, div, p 의 차이점이 무엇인가요? [1] 2007.08.10
산수익힘책 php를 독학으로 공부중입니다만.. 막히는 부분이 있습니다 [2] 2007.08.10
김민수 포샵에서 그림이 자연스럽게 겹쳐지는 효과 어떻게 하나요? [2] 2007.08.10