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

이런거 어떻게 처리해야 하나요 ? 채택완료

KIMys 10년 전 조회 3,394

게시판에서 상품코드를 여러개 입력받는 필드가 wr_3 입니다.

 

write_update.skin.php 파일에 아래와 같이 코드를 작성해서 저장되는데

<?php
?>

print_r($_POST);

$count = count($_POST['it_id'])-1;
for($i=0;$i<count($_POST['it_id']);$i++) {
 $wr_3 .= $_POST['it_id'][$i];
}
sql_query("update $write_table set wr_3 = '$wr_3' where wr_id = '$wr_id'");
?>​

 

문제는 각각 구분 기호를 넣고 싶어서

 $wr_3 .= $_POST['it_id'][$i]."|"; 이렇게 하면 맨 마지막에 "|" 기호로 인하여

불러오는 쪽에서 explode("|",xxxx); 이런식으로 하면 항상 한개가 더 나온다는 겁니다. 공백으로

 

 

이럴땐 어떻게 처리하는게 좋을까요 ?

 

몇일째 스케쥴때문에 급하게 작업하다 보니 머리가 잘 안 돌아가네요 ㅠ.ㅜ

 

 

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

답변 5개

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

$wr_3 = implode('|', $_POST['it_id']); 

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

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

N
10년 전

상품 코드관련 이라면 중간에 널이 들어갈 가능성은 없어보이고

 

내용을 보면 상품코드를 기준으로 해서 액션이 실행되는 코드인거같으니. 

 

뿌릴때 반복문돌리면서

 

if(배열명 != "" || 배열명 != null){

 

하고싶은 코드작업

 

}

 

 

이러면 끝

 

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

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

10년 전

캬.... implode 함수로 처리하면 한줄이면 끝납니다.

공부좀 하세요~ 팀장님~ 

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

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

</p><p>$arr_wr_3 = array();</p><p> </p><p>print_r($_POST);</p><p>$count = count($_POST['it_id'])-1;</p><p>for($i=0;$i<count($_POST['it_id']);$i++) {</p><p> $arr_wr_3 = $_POST['it_id'][$i];</p><p>}</p><p> </p><p>$sql_common = implode("|", $arr_wr_3);</p><p> </p><p>sql_query("update $write_table set wr_3 = '$sql_common' where wr_id = '$wr_id'"); </p><p>

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

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

10년 전

입력시 마지막 체크를 해서 |를 넣지 않으시거나

사용할때 공백값을 사용안하시도록 하시면 되지 않을까요?

explode 함수 자체에서 지원하는거를 물어보신거면 다음분이 잘 대답해 주실겁니다.

저 같은경우는 선처리를 합니다..​

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

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

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

로그인