json 형식으로 채택완료
초초동
5년 전
조회 3,157
json으로 상품들의 정보를 끌어갈수 있게 만들고 있습니다.
상품의 기본적인 정보는 다 잘 됐는데, 옵션 부분을 어떻게 해야될지 모르겠습니다...ㅠ
</p>
<p>header('Content-Type:application/json; charset=utf-8');
$json_array = array();
$sql =" select * from {$g5['g5_shop_item_table']} where ca_id = '$ca_id' ";</p>
<p>$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++) {</p>
<p>-</p>
<p>- 생략</p>
<p>$json_array[$i]["it_1"] = $row["it_1"];
}</p>
<p>$json_array = json_encode($json_array, JSON_UNESCAPED_UNICODE );
$json_array = prettyPrint( $json_array );
echo prettyPrint( $json_array );</p>
<p>
요런식으로 만들었는데...
옵션도 저런식으로 만드니깐 ...
뭔가 이상하게 나오더라고요 ㅠ
xml로는 아래와 같이 햇는데 ㅠ
</p>
<p><?</p>
<p>echo "<pOptions>\n";</p>
<p>$sql3 = " select * from {$g5['g5_shop_item_option_table']} where io_use = '1' and it_id = '{$row['it_id']}' order by io_no asc ";
$result3 = sql_query($sql3);</p>
<p>for($i=0; $row3=sql_fetch_array($result3); $i++) {
$opt_subject = explode(',', $row['it_option_subject']);
?>
<pOption>
<opName><?php echo $opt_subject ; ?></opName>
- 생략-
</pOption>
<?php
}
echo "</pOptions>\n";
}
?></p>
<p>
출력하고,
파싱까지 다 잘 됐거든용 ㅠ
json이 문제라소ㅠㅠ
어떤식으로 json을 만들어야될까요?
댓글을 작성하려면 로그인이 필요합니다.
답변 4개
5년 전
</p>
<p>header('Content-Type:application/json; charset=utf-8');
$json_array = array();
$sql =" select * from {$g5['g5_shop_item_table']} where ca_id = '$ca_id' "; //
$result = sql_query($sql);
for ($i=0; $row = sql_fetch_array($result); $i++) {
$json_array[$i]["code"]= specialchars_replace($row['it_id']); // 상품 고유번호
$json_array[$i]["cate1"] = $row["ca_id"]; // 1차 카테고리
// 생략 //
$json_array[$i]["optionuse"] = $useoption; // 옵션 유무</p>
<p>
if($useoption =='2'){ // 옵션이 있으면</p>
<p> $sql3 = " select * from {$g5['g5_shop_item_option_table']} where io_type = '0' and io_use = '1' and it_id = '{$row['it_id']}' order by io_no asc ";
$result3 = sql_query($sql3);</p>
<p> for($i=0; $row3=sql_fetch_array($result3); $i++) {
$opt_subject = explode(',', $row['it_option_subject']);</p>
<p> $json_array[$i]["opName"] = $opt_subject; </p>
<p> }
}
}</p>
<p>$json_array = json_encode($json_array, JSON_UNESCAPED_UNICODE );
$json_array = prettyPrint( $json_array );
echo prettyPrint( $json_array );
}</p>
<p> </p>
<p>
이런식으로 했습니다...
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
L
LovelyCaT
5년 전
�
초초동
5년 전
오매오매;;
for($a=0; $row3=sql_fetch_array($result3); $a++) {
로 바꾸니깐 됐어요;ㅋㅋ
하.. 바보 ㅠ
for($a=0; $row3=sql_fetch_array($result3); $a++) {
로 바꾸니깐 됐어요;ㅋㅋ
하.. 바보 ㅠ
댓글을 작성하려면 로그인이 필요합니다.
5년 전
https://sir.kr/g5_plugin/3318" rel="nofollow">https://sir.kr/g5_plugin/3318
요것을 살~짝 응용했습니당

요런식으로 나와야되는뎅..ㅠ
로그인 후 평가할 수 있습니다
답변에 대한 댓글 2개
L
LovelyCaT
5년 전
질문에 올려주신
완성된 $json_array 데이터가 어떻게 나왔는지 보여주시겠어요?
$row["it_1"] 로 만들어진 형태라면
{"0":{"it_1":"값"},"1":{"it_1":"값"}} 이런식으로 나와야할 것 같은데..
완성된 $json_array 데이터가 어떻게 나왔는지 보여주시겠어요?
$row["it_1"] 로 만들어진 형태라면
{"0":{"it_1":"값"},"1":{"it_1":"값"}} 이런식으로 나와야할 것 같은데..
�
초초동
5년 전
이거는 xml파일을 json으로 바꾼거라서 저렇게 나왓어요 ㅠ
댓글을 작성하려면 로그인이 필요합니다.
답변에 대한 댓글 1개
L
LovelyCaT
5년 전
이미지 주신 형식이 json 형식이 맞습니다..ㅎㅎ
댓글을 작성하려면 로그인이 필요합니다.
답변을 작성하려면 로그인이 필요합니다.
로그인
prettyPrint 에서 딱히 순서나 다차원 배열 이동이 없었으면 첫번째 댓글에 올려주신 이미지대로 나오는게 맞습니다.
원하시는 출력방향대로 배열부터 손보셔야할 것 같네요~