배열 저장 관련 질문

배열 저장 관련 질문

QA

배열 저장 관련 질문

답변 2

본문

write.skin.php에~

<?php

$wr_16k = explode('|', $write[wr_16k]);  

?> 

<li><input type="checkbox" id="checkbox0"   name="wr_16k[]" />a</li> 

<li><input type="checkbox" id="checkbox1"  name="wr_16k[]"  />b</li>

<li><input type="checkbox" id="checkbox2"  name="wr_16k[]"  />c</li>

<li><input type="checkbox" id="checkbox3"  name="wr_16k[]"  />d</li>

<li><input type="checkbox" id="checkbox4"  name="wr_16k[]"  />e</li>

<li><input type="checkbox" id="checkbox5"  name="wr_16k[]"  />f</li>

이렇게 하고~

write_update.head.php에~
<?
$wr_16 = implode("|", $_POST[wr_16k]);
?>
이렇게 하고~

write_update.skin.php에~
<?php
$sql = " update $write_table set  wr_16 = '$wr_16' where wr_id = '$wr_id' ";
sql_query($sql);
?>
이렇게 했는데요.

만약에 write에서 체크체크를 
1,3,5째만하면
db에 들어가는 값이
on|on|on
이렇게 1,3,5번째 값만 들어갑니다 ㅠ
제가 생각한거는
클릭을 안했을때 값이 어떻게 들어가는지 모르겠는데..
만약에 클릭은 안한부분은 0이라는 값이 들어간다고하면

on|0|on|0|on
이런식으로 들어가는줄 알았는데 아니네요 ㅠㅠ

클릭안한 부분은 어떻게 값을 넣나요ㅠ


이 질문에 댓글 쓰기 :

답변 2

write.skin.php

<?

$wr16 = explode("|", $write['wr_16']);

$arr = array("a", "b", "c", "d", "e", "f"); 

foreach($arr as $k => $v) {

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

   echo "<li><input type='checkbox' name='wr_16k[]' value='".$v."'".$chk.">".$v."</li>";

}

?>

 

write_update.ksin.php 

저렇게 value에 값을 넣으시면 체크한 값만 다음 페이지로 넘어갑니다.

예를 들어 a, c만 체크를 했다고 가정을 합니다.

그러면 다음 페이지에서 update에

$wr16 = implode("|", $_POST['wr_16k']);

 

이런 식으로 하면 체크한 값만 체크가 됩니다.

참고하시라고 올립니다. 

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 39
© SIRSOFT
현재 페이지 제일 처음으로