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

php로 만든 json 파일 인식을 못합니다. 채택완료

스니음 3년 전 조회 1,962

</p>

<p><?php

include_once('./_common.php');

header('Content-Type:application/json; charset=utf-8');</p>

<p>$json_array = array();</p>

<p>$sql = "select * from g5_write_notice where wr_id =".$_GET['no'];

$result = sql_query($sql);

for ($i=0; $row = sql_fetch_array($result); $i++) {</p>

<p>$json_array["notice"]["title"] = $row["wr_subject"];</p>

<p>}        </p>

<p>$json_array = json_encode($json_array, JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES);</p>

<p>echo $json_array;

?></p>

<p>

이런식으로 만들어서 json 파싱을 하게 했는데 

json 값을 보면 

{"notice":{"title":"공지사항"}}

 

이런식으로 잘 나옵니다. 근데 실제로는 파싱하는쪽에서는 값을 못 불러 옵니다.

 

근데 위에 소스를 다 지우고 

{"notice":{"title":"공지사항"}} 

걍 이렇게만 넣으면 제대로 인식을 합니다.

 

뭐가 문제 일까요? 어차피 나오는값은 똑같은데 왜 php를 쓰면 안되고, 걍 텍스트만 넣으면 되죠?

 

미칠거 같아요 ㅜㅜ

 

 

 

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

답변 5개

채택된 답변
+20 포인트
스니음1
3년 전

끝내는 스스로 해결했습니다.

fopen 으로 새로 걍 json 파일 생성해서 불어오게끔 하니깐 되네요.

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

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

php부분에서 마지막에

</p>

<p>echo json_encode($json_array);</p>

<p>

script부분에서 ajax의 결과같을 result로 받아 온다면,

</p>

<p>var temp = JSON.parse(result);</p>

<p>

 

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

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

3년 전

불러오는곳에서는 어떻게 불러오고 있으신건가요?

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

답변에 대한 댓글 1개

스니음
3년 전
그건 잘 모르겠어요. 그쪽에서는 저 양식으로만 json으로 만들면 된다고 하더라고요
자바스크립트를 써서 가져가는거 같은데

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

$json_array = json_encode($json_array);

이렇게 하면 문제가 생기나요?

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

답변에 대한 댓글 2개

스니음
3년 전
일단은 제목만 가져오지만 나중에 wr_link1 값도 가져오려면 JSON_UNESCAPED_UNICODE|JSON_UNESCAPED_SLASHES 이거 2개 다 붙여야 할거 같아요
엑스엠엘
3년 전
추가 파라미터 없이 진행해 보세요.

그리고
for ($i=0; $row = sql_fetch_array($result); $i++) {
$json_array["notice"]["title"] = $row["wr_subject"];
}

이 코드도 이상하네요. 보통은
for ($i=0; $row = sql_fetch_array($result); $i++) {
$json_array["notice"]["title"][]= $row["wr_subject"];
}
이런 식으로 합니다.

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

JSON_UNESCAPED_UNICODE 이거 하나만 써보세요

그리고 제이쿼리 아작스 쓸때는 꼭 datatype을 확인 하세요

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

답변에 대한 댓글 2개

스니음
3년 전
JSON_UNESCAPED_UNICODE 이거 하나만 써도 안되요;;
리오닥터
3년 전
결과값 배열로 볼수있나요

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

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

로그인