여분필드 관련 질문입니다.

여분필드 관련 질문입니다.

QA

여분필드 관련 질문입니다.

본문

게시판 등록으로 메인 배너 표시 여부랑 순서 여부를 관리하는 게시판 스킨을 만들고있습니다.

 

wr_1 는 표시 여부로서 Y/N 라디오버튼으로 Y일때만 메인 배너에 나오게 했습니다.

 

문제는 wr_2 인데요. wr_2는 셀렉트박스를 이용하고 있습니다.

 

wr_2는 순서로서, 배너의 순서를 00, 01 ~ 12 번까지 정해서 순서대로 나오게 하고 싶은데..

 

00 번은 표시 여부가 N일때 쓰고. 01 ~ 12번은 Y일때 쓰는겁니다.

 

여기서 예를 들어서 다른 게시글에서 Y이고 01 ~ 10 번까지 이미 존재한다면..

 

새로 글쓰기에서는 00, 11, 12 번만 선택할 수 있게 하고 싶습니다.

 

그리고 01 ~ 12번 모두 존재한다면 00만 나오게 되겠죠.

 

즉 wr_1이 Y인 글들은 wr_2가 서로 중복이 되지 않게 하고 싶습니다.

 

sql문을 잘 짜야하는것 같은데.. 방법이 떠오르지 않네요.

이 질문에 댓글 쓰기 :

답변 1

$test_array = array("00","01","02",......,"12");
$result = sql_query(" select wr_2 from 테이블 where wr_1 = 'Y' group by wr_2");

for($i=0; $row = sql_fetch_array($result); $i++){
 if(in_array($row['wr_2'], $test_array)){
  $key = array_search($row['wr_2'], $test_array);
  unset( $test_array[$key] );
 }
}
sort($test_array);

echo "<select>";
for($i=0; $i < count($test_array); $i++){
 echo "<option value='".$test_array[$i]."'>".$test_array[$i]."</option>";
}
echo "</select>"; 

참고로 다른분들이 보실까봐 따로 적자면, 저 소스를 그대로 썼을때 기준으로..

원래 써져있던 글을 수정할때 자신의 글 번호를 가져오지 못하는 문제가 있습니다.

그래서


$test_array = array("00","01","02","03","04","05","06","07","08","09","10","11","12");
$result = sql_query(" select wr_2 from 테이블 where wr_1 = 'Y' group by wr_2 ");
for($i=0; $row = sql_fetch_array($result); $i++){
	if(in_array($row['wr_2'], $test_array)){
		if($row['wr_2'] != $write['wr_2']){
			$key = array_search($row['wr_2'], $test_array);
			unset( $test_array[$key] );
		}
	}
}
sort($test_array);
echo "<select name='wr_2' required>";
for($i=0; $i < count($test_array); $i++){
	if($write['wr_2'] == $test_array[$i]){
		echo "<option value='".$test_array[$i]."' selected='selected'>".$test_array[$i]."</option>";
	} else {
		echo "<option value='".$test_array[$i]."'>".$test_array[$i]."</option>";
	}
}
echo "</select>";


이런 방식으로 수정해서 쓰지 않는 번호와 자신의 글 번호만 나오게 적용했습니다.

답변을 작성하시기 전에 로그인 해주세요.
전체 728
QA 내용 검색
filter #sql ×

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT