채택완료

작대기? 전봇대?

2019-08-25 (일) 23:26:14 2,267

정상에 갖다가 하산중인데요...

하산도 어렵네요,,,

엑셀 업로드할때 각각의 필드에 넣던거를

분할필드로 몽땅 넣으려고 하는데...

$p_url  .=$_POST['p_url'.$i]  =  trim($objWorksheet->getCell('A'.$sline)->getValue());
$price .=$_POST['price'.$i] = $objWorksheet->getCell('B'.$sline)->getValue();
$qty  .=$_POST['qty'.$i] = $objWorksheet->getCell('C'.$sline)->getValue();
$size  .=$_POST['size'.$i] = $objWorksheet->getCell('D'.$sline)->getValue();

이렇게 하니 p_url, price, qty, size 필드에 각 행의 해당 열이 몽땅 들어가긴 하는데

위 코드에 작대기나 전봇대 "|"를 처리해줘야 할거 같은데

방법을 모르겠습니다.

|

답변 4개 / 댓글 7개

채택된 답변
+20 포인트
2019-08-26 (월) 17:43:23

흠.. 전체적으로 봐야 알것같아요

답변에 대한 댓글 1개

2019-08-26 (월) 19:49:58
관심에 감사합니다!
2019-08-26 (월) 16:30:28

아뇨 저런방식 말구요 

$p_url = $_POST['p_url'.$i]  =  trim($objWorksheet->getCell('A'.$sline)->getValue()); 

$tmp_url = expload("|", $p_url);

이렇게해서 $tmp_url 만 배열이 잘 들어오는지 확인해보세요

답변에 대한 댓글 4개

2019-08-26 (월) 16:43:09
해보겟습니다. ㅎ
2019-08-26 (월) 16:52:10
$p_url = $_POST['p_url'.$i] = trim($objWorksheet->getCell('A'.$sline)->getValue());

$tmp_url = impload("|", $p_url); 이거도

$p_url = $_POST['p_url'.$i] = trim($objWorksheet->getCell('A'.$sline)->getValue());
$tmp_url = implode("|", $_POST['p_url']); //이거도 한개만 등록됩니다.

$price .=$_POST['price'.$i] = $objWorksheet->getCell('B'.$sline)->getValue();이거는 구분자 없이 몽조리 등록되구요,,
근데 현재 받는 값이 배열인가요?
아니면 그냥 스트링인가요?
2019-08-26 (월) 17:10:50
엑셀에 있는거 그냥 업로드하는 것입니다.
쓰기페이지에서는 $p_url = explode("|", $write['p_url']); 이렇게 하고 잇구요
2019-08-26 (월) 15:36:48

$p_url  .= 근데 이렇게 하면 문제 생기지 않아요? expload("|", $p_url); 

이걸로 데이터가 배열로 잘 들어오는지 print_r로 확인해보세요 

답변에 대한 댓글 1개

2019-08-26 (월) 16:26:15
$p_url .= 문제 생기지 않으며 질문내용처럼 구분자없이 몽땅 들어갑니다.
p_url .= expload("|", $p_url) = $_POST['p_url'.$i] = trim($objWorksheet->getCell('A'.$sline)->getValue());
뭐 이런식으로 하면 한개만 들어가구요,,

p_url .= expload("|", $_POST['p_url'.$i]) = trim($objWorksheet->getCell('A'.$sline)->getValue()); 이렇게 해보니 애러나구요,,ㅋ
2019-08-26 (월) 14:03:15

expload('|', 값); 이렇게 익스플로드함수 써서 하면되자 않아요?

답변에 대한 댓글 1개

2019-08-26 (월) 14:53:44
위의 상태에서 어떻게 넣으면 될지 조언좀 부탁합니다.

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