그누보드5 여분필드 다중 체크 박스 함수로 만들기

키워드 : 그누보드 여분필드 다중 체크박스, 여분 필드 체크박스 많을 경우

무료아이콘 전체게시물 작성일18-09-07 15:15 조회352회

본문

 

그누보드5 여분필드 다중 체크 박스 함수로 만들기 

 

휴 체크 박스 항목이 많아지고

이걸 또 일일히 적기 보다 여분필드에 미리 적어두고, 함수로 만들어서 호출해서 사용하면 편할 거 같은데 코드 작성시 보여지는 코드가 짧기도 하고...

 

자꾸 게시판 관리자 여분필드(bo_)를 고집하게 되는데

이게 맞는건가 싶기도 하고 고민을 하게 되네요

 

이 조차도 프로그램 잼병이라 

그누보드며 phpschool이며 질문해서 얻었네요 

질문에 답글 남겨주신분들 감사합니다.

 

1번째 방법 아주 잘 됨

write.skin.php 

 

b9c4fdde35f446a833bb83e0648b7fa3_1536299
 

<?php

$wr_12array = array("에어백(운전석)", "에어백(동승석)", "에어백(커튼)", "브레이크 잠김 방지","미끄럼 방지(TCS)","차체자세 제어장치(ESC)","타이어 공지압센서(TPMS)","차선이탈 경보 시스템(LDWS","전자제어 서스펜션(ECS)","주차 감지센서(전방)","주차 감지센서(후방)","후측방 경보 시스템","후방 카메라","360도 어라운드 뷰");

$wr12 = explode("|", $write['wr_12']);

foreach($wr_13array as $v) {

$checked = in_array($v, $wr12) ? " checked" : "";

echo "<dd><input type='checkbox' name='wr_12[]' value='".$v."'".$checked."><span>".$v."</span></dd>";

}

?>

 

 

2번째 방법 checked가 안 됨 

근데 괜시리 - -;; 코드가 긴거 같고 ㅋㅋㅋ

엄한 뻘짓 시작 -_-

 

bo_1여분필드에 체크박스 값들을 미리 넣어두고

bo_1만 호출해서 위와 같이 출력 되게 하는 걸 찾아 봄

출력은 똑같이 되긴해요 다만 checked 가 안 되요 ㅠㅠ

 

체크 하지 않은 항목까지 전부 checked가 되버리고

선택한 값들이 있더라도 수정을 하게 되면 수정 화면에서 뭘 선택했는지

알 수가 없어요 ㅠㅠ

 

아래 사진처럼 초기에 전부 체크가 된 상태가 되버리는 ㅠㅠ

 

b9c4fdde35f446a833bb83e0648b7fa3_1536300 

 

<?php

$wr12 = explode("|", $board['bo_1']); 

foreach($wr12 as $v){

$checked = in_array($v, $wr12) ? " checked" : ""; 

echo "<dd><input type='checkbox' name='wr_12[]' value='".$v."'".$checked."><span>".$v."</span></dd>"; 

?>

 

 

3번째 방법 checked가 안 됨 

마지막으로 함수로 사용하기

select 함수로 만들어 사용하기 참고

 

게시판 여분필드 bo_1에 체크박스 값들을 미리 넣어두고,

함수 호출로 사용하는 방법이랍니다.

 

위 링크에서 제공하는 함수에서

체크박스로만 바꾼거랍니다.

lib/common.lib.php 

 

 function option_input($data1,$data2,$data3=""){ 

    $data1=explode("|",$data1);  // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능 

    $data2=explode("|",$data2);  // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능 

    for($i=0; $i < count($data1); $i++){$dataA[$i]=trim($data1[$i]);} 

    for($i=0; $i < count($data2); $i++){$dataB[$i]=trim($data2[$i]);}

    for($i=0; $i < count($data1); $i++){

        $selected=($option_name==$dataB[$i])? "selected":"";

        $result .="<dd><input type='checkbox' id='$data3' name={$data3}[$i] value='$dataB[$i]' $selected >$dataA[$i]</dd>"; 

    } 

 

    return($result); 

}

 

사용방법은 완전 간단하죠

근데 문제는 역시 checked가 ㅠㅠ 안 되요

 

b9c4fdde35f446a833bb83e0648b7fa3_1536300 

 

 <?php echo option_input($board['bo_1'],$board['bo_1'], "wr_12");?>

 

방법은 더 찾아봐야겠네요 휴휴휴

확장된 여분필드 wr_12로 사용했는데 

아래와 사용하시면 된답니다.

 

게시판 보기 - <?php echo $view['wr_2']?>

게시판 목록 - <?php echo $list[$i]['wr_2'];?>   

 

 

checked찾아야 하는데 ㅠㅠ

 

우와!!!!!!!!!!!!!!!!!!!!!!!!!! 해결했어요 -0 -;

질문한 거 코드들 조합 계속 해보다가 결국 원하는 걸 성공했네요

해결하는데 5일 ??ㅠㅠ

 

다시 정리하자면, 저는 게시판 관리자 여분필드에 체크박스 값들을 다 넣어두고

코드가 길어지지 않게 함수로 만들어 사용하고 싶었거든요

 

b9c4fdde35f446a833bb83e0648b7fa3_1536319
b9c4fdde35f446a833bb83e0648b7fa3_1536319 

 

write.skin.php

<?php echo option_input($board['bo_3'],$write['wr_12'],"wr_12");?>

 

lib/common.lib.php

function option_input($data1,$data2,$data3){

$bo_value = explode("|", $data1);

$wr_value = explode("|", $data2);

foreach($bo_value as $v){

$checked = in_array($v, $wr_value) ? " checked" : ""; 

$result .="<dd><input type='checkbox' name='{$data3}[]' value='".$v."'".$checked."><span>".$v."</span></dd>";

}

 

return($result);

}

 

기존 소스와 함수로 만들고 난 후  ㅋㅋㅋ

출력되는 건 어차피 똑같은거 같은데 -- ;; 목 매단 ㅠㅠ

 

함수 사용 전

b9c4fdde35f446a833bb83e0648b7fa3_1536319
 

함수로 만들어 사용한 경우

 

b9c4fdde35f446a833bb83e0648b7fa3_1536319
 

 

비회원도 추천 가능합니다.
유익한 정보였다면, 추천해주세요

추천 1 비추천 0

댓글목록

무료아이콘님의 댓글

무료아이콘 전체게시물 작성일

체크 되지 않은 항목들도 보여지긴 해야하는데
이렇게 하면 -_- 체크된 항목만 보이고 ㅠㅠㅠㅠ

function option_input($data1,$data2,$data3="",$data4){
  $data1=explode("|",$data1);  // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능
  $data2=explode("|",$data2);  // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능
  $data4=explode("|",$data4);  // 구분자가 "|"로 되어 있으나 다른 문자로 변경 가능
  for($i=0; $i < count($data1); $i++){$dataA[$i]=trim($data1[$i]);}
  for($i=0; $i < count($data2); $i++){$dataB[$i]=trim($data2[$i]);}
  for($i=0; $i < count($data4); $i++){$dataC[$i]=trim($data4[$i]);}

foreach($data4 as $v) {
$checked = in_array($v, $data4) ? " checked" : "";
$result .="<dd><input type='checkbox' name={$data3}[] value='".$v."'".$checked."><span>".$v."</span></dd>";
}

    return($result);
}

그누보드 팁

96개의 게시물
목록
읽기: 1P (1lv), 쓰기: 100P (3lv), 덧글: 10P (2lv), 다운: -10P (2lv)
그누보드 팁 목록
번호 제목 아이디 날짜 조회수 추천
96 그누보드 무한 카테고리 계층형 카테고리, 여러 값에서 원하는 1개의 값만 출력하기 무료아이콘 전체게시물 11-18 9 추천: 0
95 [외부링크]회원 필드를 여분 필드로 사용하고 게시판에 출력할 때 관련링크 무료아이콘 전체게시물 11-18 14 추천: 0
94 그누보드 g5 설치 후 경로가 이상해서 이미지가 다 깨질 때 인기글 말자 전체게시물 06-17 9125 추천: 3
93 그누보드 무한 카테고리 계층형 카테고리 댓글1 무료아이콘 전체게시물 09-16 50 추천: 1
92 그누보드5 회원가입 여분필드 중복 체크 검사하기 무료아이콘 전체게시물 09-14 28 추천: 1
91 그누보드5 휴대폰 중복 체크가 안 되요 무료아이콘 전체게시물 09-13 42 추천: 1
90 그누보드5 에디터 지정된 넓이 조절 무료아이콘 전체게시물 09-08 35 추천: 1
열람 그누보드5 여분필드 다중 체크 박스 함수로 만들기 댓글1 무료아이콘 전체게시물 09-07 353 추천: 1
88 초보를 위한 SELECT (셀렉트박스) 함수로 만들어 쉽게 사용하기 관련링크 무료아이콘 전체게시물 09-07 44 추천: 1
87 글쓰기 시 올바른 방법으로 이용해 주십시오 무료아이콘 전체게시물 09-06 54 추천: 1
86 그누보드5 로그인 스킨 skin/member/basic/login.skin.php 첨부파일 무료아이콘 전체게시물 08-28 327 추천: 2
85 그누보드5 여분필드 추가하기 관련링크 무료아이콘 전체게시물 08-23 116 추천: 1
84 그부보드5 select 다중 여분필드 연동식 사용하기 첨부파일 무료아이콘 전체게시물 08-23 177 추천: 1
83 그누보드5 여분 필드 제목, 값 사용하기 and 관리자에서 여분필드를 input가 아닌 t… 무료아이콘 전체게시물 08-22 127 추천: 1
82 그누보드5 - 게시판 보기에서 여분필드 값 특정 레벨만 보여지게 하기 무료아이콘 전체게시물 07-29 40 추천: 1
게시물 검색