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

미래는 지금 현재 우리가 무엇을 하고 있는가에 달려 있다. 채택완료

그누x쵸딩 5년 전 조회 2,156

반갑습니다. 그누x쵸딩입니다.

바로 질문들어갈게요~ ㅎ

 

쓰기에서 체크박스를 배열로 했습니다.

  />

그래서 업데이트에서

 

for($h=0;$h <10; $h++) {

   if ($h > 0) $extra .= "|";    $extra .= $_POST['extra'.$h]; } 요렇게 해서 잘되는데요...

 

그런데 만지작거리다가 사고가 터졌습니다..ㅜㅜㅜ

쓰기를 동적추가로 바꾸다 보니..

이제 업데이트코드가 부적절해졌다는 것입니다.

h<10까지 나오게 했는데

 

동적추가폼으로 바꾸다보니 h<10으로 고정된 것은 

안맞는 상황이 발생했다는 것입니다..흑흑

이런때는 어떻게 해야 하는지 도움좀 부탁드립니다.

 

계속 질문해서 죄송한데...

실력이 안되는 x쵸딩이다보니..

qa나 인터넷 뒤져도 이해도 어렵고

부득이 질문올립니다.

 

 

 

 

 

 

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

답변 1개

채택된 답변
+20 포인트

html

extra[]" id="extra" class="css-checkbox2"  value="extra" />

 

php

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

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

답변에 대한 댓글 8개

그누x쵸딩
5년 전
아,감사합니다. 해보겠습니다.
그누x쵸딩
5년 전
해보았는데요, 수정할 때마다 체크상태가 옴겨다닙니다. 왜그런가요?
쟁반짜장
5년 전
html
$ext = explode("|", $extra);
for($i = 0; $i < count($ext); $i++) {
$checked = $ext[$i] == "extra" ? " checked" : "";
echo "<input type='checkbox' name='extra[]' id='extra".$i."' class='css-checkbox2' value='extra'".$checked.">";
}

$extra가 어떤 값을 읽어오는지 모르겠지만 저 부분을 저장된 값으로 교체하시면 됩니다.
그누x쵸딩
5년 전
아,감사합니다..코드가 필이 옵니다...ㅎㅎ
그누x쵸딩
5년 전
죄송합니다. 다 된거 같은데 1%가 안되서 ㅋ
<input type="checkbox" name="extra[]" id="extra<?=$i?>" class="css-checkbox2" value="○" <? if ($extra[$i] == '○') echo "checked";?> style="width:40%"/>
원래코드가 벨류를 기호로 이런데요..

알려주신 반복문이 동적추가하기 위한 바깥의 for문하고 충돌나서
겹치기 않게 k로 바꿨더니 체크박스가 안나타납니다..흑흑
<?
$ext = explode("|", $extra);
for($k = 0; $k < count($ext); $k++) {
$checked = $ext[$k] == "extra" ? " checked" : "";
echo "<input type='checkbox' name='extra[]' id='extra".$k."' class='css-checkbox2' style='width:40%' value='extra'".$checked.">";
}
?>
쟁반짜장
5년 전
for($k = 0; $k < count($ext); $k++) {
$checked = $ext[$k] == "○" ? " checked" : "";
echo "<input type='checkbox' name='extra[]' id='extra".$k."' class='css-checkbox2' style='width:40%' value='○'".$checked.">";
}
그누x쵸딩
5년 전
시간내주셔서 감사합니다.

<? if ($extra[$i] == '○') echo "checked";?>
원래 이렇게 되엇던건데..
php안에 넣으면서 value='○'".$checked." 이부분 때문에 안나타는거 같습니다.
쟁반짜장
5년 전
제가 올려드린 코드 그대로 사용하신 건가요?
<? if ($extra[$i] == '○') echo "checked";?>
이 코드는 나와야 할 이유가 없습니다.

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

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

로그인