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

쉽지 않아 질문드려요 채택완료

머시기거시기 6년 전 조회 1,818

g5_write_shipping게시판에 글을 쓰면 

g5_shipping테이블에 별도의 데이터가 저장됩니다. shipping 게시판의

wr_id값    no

223       1

223       2

223       3

 

이런식으로요,,,

 

 

그런데 

aaa게시판에서 업데이트할때

g5_shipping테이블에도 업데이트를 위해

 

if($w=='u' && $write[wr_210] && $write[wr_261]){

 sql_query("update g5_shipping set is_arrival='$wr_261' where wr_id = '$write[wr_212]' ");
 
}  //wr_212는 g5_shipping테이블의 wr_id값과 같습니다.
 

위 코드로 했는데 잘 됩니다. 그런데 문제는

wr_261이 분할필드인데...

 

g5_shipping의 is_arrival 에 |○|○|○|○||||||||||||||||||||||||||| 이렇게 몽조리 들어간다는 겁니다.

당연한 거지많요 ㅋ

 

 

where wr_id = '$wr_id' and no

 

이런 식으로  해서

 

wr_261분할 첫번째는  wr_id의 no 1에

               두번째는                2에

이렇게 들어가게 하고 싶습니다.

 

*aaa게시판의 wr_212는 g5_shipping테이블의 wr_id값과 같습니다.

 

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

답변 3개

채택된 답변
+20 포인트
L
6년 전

업데이트시 wr_261 기존갯수에서 추가되거나 삭제되는것이 없이 수정만 가능한거면  아래코드로 하시면 될겁니다.

</p>

<p>if($w=='u' && $write[wr_210] && $write[wr_261]){

 $wr_261=explode("|",$wr_261);

 for($i=1;$i<=count($wr_261);$i++)){

   sql_query("update g5_shipping set is_arrival='$wr_261[$i]' where wr_id = '$write[wr_212]' and no='{$i}'");

 }

}</p>

<p>

 

하지만 어느 한개의 no 가 삭제될수 있는경우면 form 에서 따로 수정할 no 들의 데이타도 같이 보내오고 받은 no 에 대해서만 처리하게 해야됩니다. 


 

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

답변에 대한 댓글 1개

머시기거시기
6년 전
아,,,원하는 자리에 잘 들어왔습니다.
이런거는 질문으로 해결될 내용이 아닌데..
뭐라고 감사드려야 할지 모르겠습니다..

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

wr_261 필드는 |○||○|○||||||||||||||||||||||||||| 이렇게 첫번째 [1]   [3]  [4] 필드에 들어가 있는데

순서없이 이미지처럼 no5, 6, 7에 ○ 들어와 있습니다. (no5, 6, 7은 생성되지 않아야 하구요..)

 

wr_id 221486  no 1  ○

                   no 2

                   no 3  ○

                   no 4  ○

이런식으로 들어와야 하는데요,,,

 

 

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

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

L
6년 전

원하는 효과가 맞는진 모르겠지만 참고해보세요.

</p>

<p>if($w=='u' && $write[wr_210] && $write[wr_261]){

 sql_query("delete from g5_shipping where wr_id='$write[wr_212]'");

 $wr_261=explode("|",$wr_261);

 for($i=0;$i<count($wr_261);$i++)){

    if($wr_261[$i]){

        sql_query("insert into g5_shipping set is_arrival='$wr_261[$i]', wr_id = '$write[wr_212]' ");

    }

 }</p>

<p>}</p>

<p>

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

답변에 대한 댓글 2개

머시기거시기
6년 전
감사합니다~ 그런데
sql_query("delete 이렇게 해서 g5_shipping의 필드값이 삭제되는 현상이 있습니다.
삭제되버리니 wr_261분할 값이 각각으로 is_arrival 들어가는지도 모르겠구요,
머시기거시기
6년 전
update로 했더니 뭔가 들어가긴 들어가는데....

아래 답변글로 이미지 첨부하겟으니 한번봐주시면 감사하겟습니다.

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

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

로그인