for문으로 생성한 라디오버튼 값 write_update.php로 넘겨줄때
조회된 쿼리값의 결과만큼 for문을 돌려 라디오버튼을 생성합니다.
$i=0;
예를 들어서 name='a_<?=$i?>' 로 선언을 해주었는데, write_update.php로 넘길때 $i(=0)의 값이 넘어가서 골치가 아픕니다..ㅠㅠ 어떻게 넘겨줘야 할까요?
아래는 라디오버튼 생성하는 코드입니다.
<? for ($i=0; $i<count($list_1); $i++) { ?><tr> <td class=write_head><?=$list_1[$i][item_nm]?></td><td> <input type='radio' name='score_<?=$i?>' value='5' onClick='sum()'>5점 <input type='radio' name='score_<?=$i?>' value='4' onClick='sum()'>4점 <input type='radio' name='score_<?=$i?>' value='3' onClick='sum()'>3점 <input type='radio' name='score_<?=$i?>' value='2' onClick='sum()'>2점 <input type='radio' name='score_<?=$i?>' value='1' onClick='sum()'>1점 <input type='radio' name='score_<?=$i?>' value='0' onClick='sum()' checked='checked'>0점 </td> <td><input type="hidden" name='item_no_<?=$i?>' value='<?=$list_1[$i][item_no]?>'></td></tr><?}?>
아래는 write_update.php 소스코드입니다.
$sql = "SELECT * from table"; $result = sql_query($sql); for ($i=0; $row=sql_fetch_array($result); $i++) { $sql="update 'table명' set '컬럼명' = $score_$i"; sql_query($sql); }
답변 4개 / 댓글 3개
아.. 위에분것 보고 착각을 했네요... 현재 폼은 그렇게 구성하시는게 맞습니다.
받는 쪽에서는
$score_$i
이게 아니라..
for ($i=0; $row=sql_fetch_array($result); $i++) |
|
|
이렇게 받아 보세요
과목 점수
국어 5점,4점,3점,2점,1점
영어 5점,4점,3점,2점,1점
db생성시 구분만 잘하시면 됩니다
1 홍길동 국어 1점 영어 2점
2 강백호 국어 3점 영어 2점
3 그누보이 국어 1점 영어 1점
4 허군 국어 2점 영어 5점
이럴경우 보통
num int(12) unsigned
name varchar(255)
kor tynyint(4) unsigned
eng tynyint(4) unsigned
db를 요런식으로 만들어 놓고 kor은 국어 eng는 영어로 하기때문에
과목에 대한 컬럼명이 필요치 않습니다 그 과목에 대한 값만 넣으면 되니까요
불량학생님 답변이 맞습니다.
다만 체크박스도 라디오박스와 같은 방식입니다.
name는 같아야 합니다.
사용하신 방법은 name이 모두 다르기에.. 라디오버튼을 체크박스처럼 사용하셨다 볼수 있겠습니다.
잘못하신듯합니다
<input type='radio' name='score' value='1' onClick='sum()' checked='checked'>
<input type='radio' name='score' value='2' onClick='sum()' checked='checked'>
<input type='radio' name='score' value='3' onClick='sum()' checked='checked'>
<input type='radio' name='score' value='4' onClick='sum()' checked='checked'>
<input type='radio' name='score' value='5' onClick='sum()' checked='checked'>
이렇게 하시는게 맞습니다
현재사용하는 방식은 체크박스를 사용할때 쓰입니다
이렇게 넣으시고
$score 값을 db에 저장 하시면 됩니다
답변을 작성하려면 로그인이 필요합니다.