POST값이 다른건 넘어오는데 하나가 안넘어옵니다.
본문
<table>
<tr>
<?php
$sql = " select * from bt_mail_addr ";
$result = sql_query($sql);
$cnt = 0;
while($row=sql_fetch_array($result)) {
$cnt++;
?>
<span>
<input type="hidden" name="cat_id_<?=$cnt?>" id="cat_id_<?=$cnt?>" value="<?=$row['bt_mail_uid']?>" />
<!--wr_name를 cat_<?=cnt?>으로 대체-->
<input type="text" name="cat_<?=$cnt?>" id="cat_<?=$cnt?>" value="<?=$row['bt_mail_name']?>" />
<!--wr_id를 cat_id_<?=$cnt?>으로 대체-->
<input type="text" name="cat_mail_<?=$cnt?>" id="cat_mail_<?=$cnt?>" value="<?=$row['bt_mail']?>" />
</span>
<span>
<input type="submit" value="삭제" onclick="document.pressed=this.value+'|'+<?=$cnt?>" ></span>
<br>
<?php } ?>
</tr>
</table>
bt_mail_uid값을 POST로 update페이지로 보내려고 합니다.
그 밑의 bt_mail_name과 bt_mail값은 잘 넘어옵니다.
------------------------------update.php------------------------
$cnt = $_POST['cnt'];
$bt_mail = $_POST['cat_name_' . $cnt];
$bt_mail_name = $_POST['cat_' . $cnt];
$bt_mail_uid = $_POST['cat_id_' .$cnt];
$sql2 = "delete from bt_mail_addr where bt_mail_uid = '" . $bt_mail_uid . " '";
$res2 = sql_query($sql2);
if($res2) {
$msg = "삭제완료";
$replaceURL = './mail_send_list.php';
bt_mail이나 bt_mail_name값은 잘 가져오는데
bt_mail_uid값을 못가져오네요
그래서 삭제가 되지 않는거같은데
왜 값이 안넘어오는걸까요?
답변 2
<input type="hidden" name="cnt" id="cnt" value="<?=$cnt?>">
cnt 값이 유동적이니 위처럼 cnt 값도 같이 보내서 처리해야 할듯 합니다만..
전체 소스를 봐야 하겠지만 보이는 것만으로는 좋은 로직은 아닌듯 합니다.
받는쪽에서 print_r($_POST); 해보셔서
빈값이라도 cat_id_ 값이 오는지 확인해보세요
<?=$row['bt_mail_uid']?> 이값도 확인해보세요