for문 질문입니다.
본문
아래와 같은 소스를 작성했는데요
for ($i=0; $i<count($_POST['chk']); $i++) 만 있을때는 여러개의 체크박스를 선택, 수정버튼을 클릭해도 체크된 부분이 수정되었는데요 밑에 for ($i=0; $row=sql_fetch_array($result); $i++) {이 들어가니 하나만 수정이 됩니다.
어떤걸 잘 못 한건가요?
for ($i=0; $i<count($_POST['chk']); $i++)
{
$k = $_POST['chk'][$i];
if ($_POST['act_button'] == "선택수정")
{
$sql = "update {$write_counsel_table}
set wr_14 = '{$_POST['is_score'][$k]}'
where wr_id = '{$_POST['wr_id'][$k]}' ";
sql_query($sql);
for ($i=0; $row=sql_fetch_array($result); $i++) {
if ($_POST['is_score'][$k] == '1') {
$send_hp_mb = "$sms5[cf_phone]";
$recv_hp_mb = "$vi_3_temp[1]";
$send_hp = str_replace("-","",$send_hp_mb);
$recv_hp = str_replace("-","",$recv_hp_mb);
$send_number = "$send_hp";
$recv_number = "$recv_hp";
$sms_content = $row[wr_name]." 님 완료 되었습니다.\\n ".$default[de_admin_company_name];
$SMS = new SMS;
$SMS->SMS_con($config['cf_icode_server_ip'], $config['cf_icode_id'], $config['cf_icode_pw'], $config['cf_icode_server_port']);
$SMS->Add($recv_number, $send_number, $config['cf_icode_id'], iconv("utf-8", "euc-kr", stripslashes($sms_content)), "");
$SMS->Send();
alert("성공적으로 접수되었습니다.");
}
}
}
else if ($_POST['act_button'] == "선택삭제")
{
답변 3
$i를 두군데에 써서 그렇습니다. 한군데를 $x나 다른 변수로 바꿔주세요
if ($_POST['is_score'][$k] == '1') {
여기 $k를 바꿔야 하지 않을까요?
$k = $_POST['chk'][$i];
if ($_POST['act_button'] == "선택수정")
{
$sql = "update {$write_counsel_table}
set wr_14 = '{$_POST['is_score'][$k]}'
where wr_id = '{$_POST['wr_id'][$k]}' ";
sql_query($sql);
이부분 입니다.
$_POST['is_score'][$k]의 값이 1일때 조건문이 필요해서요
이전 페이지에서 입력값을 가져올때의 부분입니다.
이전 페이지 소스
<td class="td_num">
<label for="score_<?php echo $i; ?>" class="sound_only">처리</label>
<select name="is_score[<?php echo $i; ?>]" id="score_<?php echo $i; ?>">
<option value="0" <?php echo get_selected($row['wr_14'], "0"); ?>>접수</option>
<option value="1" <?php echo get_selected($row['wr_14'], "1"); ?>>완료</option>
</select>
</td>
답변을 작성하시기 전에 로그인 해주세요.