개발 Q&A

제목 여러가지 선택 할 경우
카테고리 PHP
글쓴이 헛발이 작성시각 2018/01/20 23:11:37
댓글 : 4 추천 : 0 스크랩 : 0 조회수 : 9917   RSS

이번 정모도 못 나가고....죄송죄송

선배님들의 조언을 부탁드립니다...

체크박스로 여러가지를 선택할 경우인데요..예를 들면 

갖고 싶은것을 선택하세요..

컴퓨터

노트북

프린트

....

 

이런 선택사항이 있다고 할때 

1개이상 선택할 경우 저장시에 보통 어떻게 하시나요?

항목별로 디비의 필드를 만들어 사용하시나요?

 

아님 하나의 필드에 선택한 값을 뭔가 조작해서 넣어 사용하나요?

 

 다음글 .htaccess에서 https로 강제하는데 위에 in... (1)
 이전글 여러 선배님들은 입력, 수정을 하나의 메서드에서 처리하... (3)

댓글

변종원(웅파) / 2018/01/21 00:00:10 / 추천 0

배열로 어딘가(db, 파일배열)에 array(1=>'컴퓨터', 2=>'노트북'); 저장이 되어 있고

(보통은 code 테이블을 따로 관리합니다. 종류(주변기기), 코드값(1-5), 실제값(컴퓨터, 노트북, 프린트...))

넘기는 값은 1, 2, 3 -> 저장도 1, 2, 3

코드테이블 참고하여 값 사용.

이렇게 합니다.

헛발이 / 2018/01/21 00:48:53 / 추천 0

답변 감사합니다....

위의 설명은 잘 이해가 가는데 궁굼한 질문은 답변 주신 3번째 줄의 "저장" 할때의 질문인데요..

코드는 이미 배열이나 코드테이블로 있는 상태인데 실제 값을 저장할때 

 

디비에 select(주변기기)라는 필드가 있고 그곳에 선택한 컴퓨터, 마우스 이렇게 2개의 값을 저장한다고 생각한다면요...

코드로 컴퓨터=1, 노트북은=2, 마우스는=3... 이렇게 있다고 가정한다면 select라는 필드에 1|3 이렇게 구분자로 넣어 필드 하나에 2가지 이상의 값을 저장하는 것이 좋은것인지 아니면 다른 방법을 사용해야 하는것인지가 궁굼하거든요.

 

왜냐 하면 select라는 필드에 1|3 이렇게 넣었을 경우에 나중에 1번을 선택한 것만 검색한다고 한다면 

select필드에서 1을 검색하면된다고 단순히 생각되지만 코드가 많아서 코드테이블에 

1=컴퓨터

2=노트북

3=마우스

...

...

10=전원케이블 

11=보안경

12=키보드커버

...

...

 

이렇게 있다면 찾고자 하는 것은 코드로는 1을 검색하고 싶지만 그렇게 된다면 1뿐만 아니라 11도 검색이 되고 12도 검색이 되지 않을까 해서 

보통은 어떤 방법을 이용하는지 궁굼합니다......

변종원(웅파) / 2018/01/21 01:12:06 / 추천 0

전엔 검색을 하면 필드를 따로 빼거나 테이블을 따로 사용했습니다만

요즘은 json 검색이 되기때문에 json 필드를 사용합니다. json포맷으로 저장하고 검색됩니다.

헛발이 / 2018/01/21 07:42:55 / 추천 0

아 그렇군요... 좋은거 배웠습니다.. 감사합니다..

많은게 해결될거 같네요...