채택완료

POST값이 다른건 넘어오는데 하나가 안넘어옵니다.

2016-10-17 (월) 14:40:16 2,300

 <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개

채택된 답변
+20 포인트

<input type="hidden" name="cnt" id="cnt" value="<?=$cnt?>">

cnt 값이 유동적이니 위처럼 cnt 값도 같이 보내서 처리해야 할듯 합니다만..

전체 소스를 봐야 하겠지만  보이는 것만으로는  좋은 로직은 아닌듯 합니다.

2016-10-17 (월) 15:11:47

받는쪽에서 print_r($_POST); 해보셔서 

빈값이라도 cat_id_ 값이 오는지 확인해보세요 

<?=$row['bt_mail_uid']?> 이값도 확인해보세요  

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