여분필드 체크박스 다중활용에서 어려운부분이 있어서 질문남깁니다. - 커뮤니티

본문 바로가기
전체검색

커뮤니티

강좌 열람은 비회원도 볼 수 있게 모두 공개되어 있습니다.

여분필드 체크박스 다중활용에서 어려운부분이 있어서 질문남깁니다.

굴렁이 19-03-07 16:48

http://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=10 


하단부근에

----------------------------------------------------------------------------------------------

여분필드를 저렇게 쪼개서 저장하고 view.skin.php 파일에서 일반적인 출력 방법인

<?php echo $view['wr_8'] ?> 이렇게 하면 중간 빈자리까지 구분 기호 '|' 가 있어서 뭔가 어색해 보일 겁니다. 

그럴 땐 개별적으로 다시 분리를 해서 출력하는 방법도 있습니다.
비효율적인 방법이지만 이미지로 디자인하거나 페이지 중간에 개별적으로 끼워 넣을 때는 더 편할 때도 있을 겁니다.

직접 해보시고 차이점을 비교해보세요.

 

<?php
$wr8 = explode("|", $view['wr_8']);
?>
<?php if($wr8[0]) { ?> 사과 <?php } ?>
<?php if($wr8[1]) { ?> 수박 <?php } ?>
<?php if($wr8[2]) { ?> 딸기 <?php } ?>
<?php if($wr8[3]) { ?> 포도 <?php } ?>
<?php if($wr8[4]) { ?> 참외 <?php } ?>


------------------------------------------------------------------------------------------------ 

이 내용이 이해가 잘 가지 않습니다.^^;;

현재 알려주신내용데로 해서 체크박스가 여분필드 wr_10 를 사용해서 체크하고 보여지게 했는데

어색해보이신다는데로 ||||체크내용|| 이렇게 나오는데요.

처음에 안될때는 뭐가되든 나오기만이라도 해라 싶었는데 자꾸보니 영...없애고 싶더라고요.


저부분에 대해서 다시한번 설명부탁드려도 될까요??


write.skin.php에 넣을 구문인


<?php
$wr8 = explode("|", $write['wr_8']);
?>
<input type="checkbox" name="wr8[0]" value="사과" <?php echo ($wr8[0] == "사과") ? "checked" : "";?>> 사과
<input type="checkbox" name="wr8[1]" value="수박" <?php echo ($wr8[1] == "수박") ? "checked" : "";?>> 수박
<input type="checkbox" name="wr8[2]" value="딸기" <?php echo ($wr8[2] == "딸기") ? "checked" : "";?>> 딸기
<input type="checkbox" name="wr8[3]" value="포도" <?php echo ($wr8[3] == "포도") ? "checked" : "";?>> 포도
<input type="checkbox" name="wr8[4]" value="참외" <?php echo ($wr8[4] == "참외") ? "checked" : "";?>> 참외


이 부분을 

<?php
$wr8 = explode("|", $view['wr_8']);
?>
<?php if($wr8[0]) { ?> 사과 <?php } ?>
<?php if($wr8[1]) { ?> 수박 <?php } ?>
<?php if($wr8[2]) { ?> 딸기 <?php } ?>
<?php if($wr8[3]) { ?> 포도 <?php } ?>
<?php if($wr8[4]) { ?> 참외 <?php } ?>


이렇게 바꾸시라는건지요? 그렇다면 체크박스가 없는데 말이지요;;ㅠㅠ


설명좀 다시한번 부탁드리겠습니다.


감사합니다.





댓글목록 +6

댓글목록

profile_image

관리자님의 댓글

관리자 작성일

view 페이지에서는 체크박스까지 출력하는 건 아니고 글자만 출력하는 겁니다.
체크박스가 있는 상태로 하는 건 따로 추가해 놓겠습니다. 당장은 힘들고 올리고 여기에 다시 댓글 남기겠습니다.

profile_image

굴렁이님의 댓글의 댓글

굴렁이 작성일

앗 감사합니다. 기대하고있을게요 ㅎㅎ

profile_image

관리자님의 댓글의 댓글

관리자 작성일

다른 방식으로 새로 올렸습니다.
http://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=177

기존 방식대로 하려면 이렇게 하셔도 되고요.
http://gnustudy.com/bbs/board.php?bo_table=skin_board&wr_id=151

profile_image

굴렁이님의 댓글의 댓글

굴렁이 작성일

헐킈!! 이렇게 빠르게 답변해주실줄 몰랐네요.ㅎ 감사합니다 적용해보겠습니다

profile_image

굴렁이님의 댓글의 댓글

굴렁이 작성일

다른방식으로 올려주신부분에서
write,skin.php 작성
<?php
$check1 = explode(",", $write['wr_1']);
$check2 = explode(",", $write['wr_2']);
?>
과일 :
<input type="checkbox" name="check1[]" value="사과"<?php echo in_array("사과", $check1) ? ' checked="checked"' : '' ?>> 사과
<input type="checkbox" name="check1[]" value="수박"<?php echo in_array("수박", $check1) ? ' checked="checked"' : '' ?>> 수박
<input type="checkbox" name="check1[]" value="딸기"<?php echo in_array("딸기", $check1) ? ' checked="checked"' : '' ?>> 딸기
<input type="checkbox" name="check1[]" value="포도"<?php echo in_array("포도", $check1) ? ' checked="checked"' : '' ?>> 포도
<input type="checkbox" name="check1[]" value="참외"<?php echo in_array("참외", $check1) ? ' checked="checked"' : '' ?>> 참외
<br>
취미 :
<input type="checkbox" name="check2[]" value="낚시"<?php echo in_array("낚시", $check2) ? ' checked="checked"' : '' ?>> 낚시
<input type="checkbox" name="check2[]" value="등산"<?php echo in_array("등산", $check2) ? ' checked="checked"' : '' ?>> 등산
<input type="checkbox" name="check2[]" value="사진"<?php echo in_array("사진", $check2) ? ' checked="checked"' : '' ?>> 사진
<input type="checkbox" name="check2[]" value="여행"<?php echo in_array("여행", $check2) ? ' checked="checked"' : '' ?>> 여행

여기서 구문이 뭔가 좀 이상하지 않나 싶습니다.
<?php echo in_array("사과", $check1) ? ' checked="checked"' : '' ?>> 이부분에서 콤마나 따옴표등이 뭔가 잘못된게 아닌가;;
적용이 안되고 그대로 써서 해보면 게시판이 깨져버립니다.
제가 아톰에디터를 사용하는데 에러나 주석처럼 되더라고요.

다행히 기존방식대로 해서 성공은 했습니다^^;;

profile_image

관리자님의 댓글의 댓글

관리자 작성일

그대로 복사해서 다시 직접 해봤지만 에러는 발생하지 않았습니다.
일부 에디터는 정상적인 구문도 강제로 변환해 버리는 문제가 있기도 한데 아톰에디터는 사용하지 않아서 잘 모르겠습니다.
<?php echo in_array("사과", $check1) ? ' checked' : '' ?> 이렇게 checked 만 해줘도 될 겁니다.

로그인 후 댓글 작성 가능합니다.

로그인

로그인 후 글 작성 가능합니다.
그누스킨닷컴

그누스터디는 그누보드, 영카트를 이용하시는 초보 사용자를 위한 정보를 공유합니다.

E-MAIL : gnustudy@naver.com / 카카오톡 : gnustudy / 텔레그램 : gnustudy
제작 문의를 제외한 일반 문의는 QA 게시판을 이용해주세요.

Copyright gnustudy.com All rights reserved.