테스트 사이트 - 개발 중인 베타 버전입니다

라디오 배열 저장 채택완료

머시기거시기 6년 전 조회 1,983

데이터를 동적추가로 받다보니....

gender필드에 배열로 저장하려고 하며 

쓰기에 반복문으로 이렇게 했는데 잘 나옵니다.

?>

남자

여자

 

이걸 gender필드에 배열로 저장해야 하는데 

 

write_update.skin.php에는 어떻게 해야 하는지 도움을 부탁드립니다.

검색해보고 여러가지로 해보는데 안되네요...

 

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
플래토
6년 전

implode를 사용하려는 시도는 좋습니다만..

문제는 배열의 인수입니다

따라서..implode가 역할을 할 의미가 떨러지게 되죠

 

폼에서 넘긴 라디오들이 20개 라고 하면

받아서도 20개를 하나로 합쳐야죠

 

넘길때 이름에 반호를 붙였으면

받을때도 20개를 하나의 이름에 담아 연결해야겠죠

그러면

for($i=0;$i <20; $i++) {

   if ($i > 0) $gender .= "|";

   $gender .= $_POST['gender'.$i];

}

 

를 상단에 놓으면 이후엔 실제 SQL문에만 적용하면 됩니다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

머시기거시기
6년 전
진정한 실력자세요!
감사합니다. 고민이 많았었는데
바로 저장이됩니다.
머시기거시기
6년 전
감사합니다. 체크값 유지는 이렇게 하니 됩니다. 다른 분을 위해..
<input type="radio" name="<?php echo 'gender'.$k;?>" value="남자" <? $b = explode("|", $write[gender]); if ($b[$k] == '남자') echo "checked";?> /> 남자 <br />

<input type="radio" name="<?php echo 'gender'.$k;?>" value="여자" <? $b = explode("|", $write[gender]); if ($b[$k] == '여자') echo "checked";?> /> 여자 <br />

덕분에 완전하게 해결하였습니다. 좋은 주말되세요~

댓글을 작성하려면 로그인이 필요합니다.

SLOOP
6년 전

name="gender[]" 이런 배열 형태로 만들어서 넘기고 foreach 돌려서 저장하면 됩니다.

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

머시기거시기
6년 전
이미 인풋에 name="<?php echo 'gender'.$k;?>" 이렇게 했구요,,,그담은 해보지 않아서 ㅋ

$gender = explode(" |",$write['gender']); // 성별
foreach($gender as $key => $val)
$gender[$key] = $val .'\'';

쓰기 상단에 이렇게 하고

업데이트스킨에 $gender = implode("|", $_POST['gender']); // 이렇게 하면
될까요?

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인