묻고답하기

* 해당 내용은 게시판 스킨에서 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 남기남
김인규 길게 작성한 홈피에서 앵커를 이용한 이동.. [1] 2007.08.10
민싱이 윈도우 서버 2003 스텐다드 에디션을 깔았습니다. [7] 2007.08.10
REDsky 새창에 홈페이지를 넣고 싶은데요. [2] 2007.08.10
민싱이 윈도서버 2003에서 아파치를 돌리는게 좋을까요? iis가 좋을까요? [8] 2007.08.10
stylebiz 음냐... ㅠ_ㅠ;; 공백 체크 함수랑 간단한 예제 소스즘.. 알려주세요 [5] 2007.08.10
체리향기∮ html 파일도 다운로드 할 수 있게 하는 방법 없을까요? [3] 2007.08.10
zeroyy.com checkbox 선택하면 코드 생기도록....?  
생각의발명가 도와주세요, 게시판 전부분과 게시판 부분부터의 폭이 안맞아요(표를 이용했어요)  
한상빈 -_- 메인 바꾸고 싶어요 [2] 2007.08.10
김윤희 로그인후 .. 어쩌면 바보같은 질문일지도.. [3] 2007.08.10
shin2chi 링크에 관한 질문인데요;; [2] 2007.08.10
이세호 window 의 width 값을 알아내려면 어떻게 해야하나요? [2] 2007.08.10
돌사진 쪽지가 실시간이 안되는 것 같아요. [2] 2007.08.10
Allong 도무지 해결이 안되는 홈페이지 에러... [2] 2007.08.10
REDsky 홈페이지 질문좀 할께요 ^_^ [2] 2007.08.10
손영대 프레임 나눌때 슬라이딩메뉴 에러! [1] 2007.08.10
김인무 회원관리를 단일화시킬 수 있을까요? [1] 2007.08.10
권명진 플래쉬에 대해서... [2] 2007.08.10
조한웅 php 관련 몇가지 함수 질문 드립니다. [4] 2007.08.10
이송곤 메인페이지 만드는 법 질문입니다 [1] 2007.08.10
cannibal 제로카운터 사용하는데여 제가 외국이라... [1] 2007.08.10
윤자영 표에서 그림을 삽입하려고 하는데요... [3] 2007.08.10
이상민 제로카운터에 싸이월드 미니홈에 있는 이벤트 hit 만들려면...? [2] 2007.08.10
yaho. :-D 백그라운드 이미지 고정 시키는 방법좀.. [1] 2007.08.10
양명길 illustrator CS에서여 이전버전의 ai화일로 저장이 안되나여? [2] 2007.08.10
김경애 DB이전방법 [2] 2007.08.10
Anie 프레임을 숨기려면.. (소스있음) [3] 2007.08.10
전재근 아주 초보적인 session 질문인가요??? [3] 2007.08.10
Homp 노프레임의 홈페이지를 만들고 메뉴 추가나 업데이트 할때요  
koreaP-3000.com php로도 검색로봇을 만드는게 가능한건지