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

카카오맵 경로를 그려서 저장하는데 json 변환처리 때문에요 채택완료

럭셔리보더 6년 전 조회 4,247

지도 정보 저장한다음에 불러오는 코드인데요.

json 처리 때문에 문의드려요.

1. object 형태의 지도정보를 json 형태의 배열로 디비에 저장완료

2. db에서 불러와서 지도에 표시하려니 다시 object 형태가 되어야하는데 이게 잘안되네요. --;

 

function getDataFromDrawingMap() {

// 기존에 그려놓은 지도 정보가 있다면 불러오기

// 이부분을 object object로 불러와야 하는거 같은데 현재 db에 넣은 그대로...json 형태의 배열로

// 이부분을 다시 object 로 만들어야 하는데 다른 함수를 써야 하는지요??

 var nosun_map = jquery.parsejson("<?php echo $nosun_map;?>");
 // Drawing Manager에서 그려진 데이터 정보를 가져옵니다

 var data = manager.getData();

 if(nosun_map){
  data = nosun_map;
 }

 

 $.ajax({
  async: false,
  //cache: false,
  type: "POST",
  url: g5_bbs_url + "/xxxxx.php",

 // 여기에서 data 는 object object 로 되어서 json으로 변환해서 db에넣었습니다.
  data: {nosun_map: JSON.stringify(data)},
  success: function(result) {
   alert("저장되었습니다.");
  }
 });

 

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

답변 3개

채택된 답변
+20 포인트

답변에 대한 댓글 1개

럭셔리보더
6년 전
넵 고맙습니다 ^^

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

럭셔리보더

var nosun_map = jquery.parsejson("<?php echo $nosun_map;?>");

이부분을 더블쿼테이션이 아닌 싱글쿼테이션으로 하고 아래처럼 수정하니 되네요 --;

var nosun_map = '<?php echo $nosun_map; ?>';
 var nosun_map_a = JSON.parse(nosun_map);

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

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

1. 제일 좋은 방법은 mysql 버전을 5.7대로 올려서 컬럼 타입을 json으로 변경해서 쓰는 겁니다.

2. 값을 배열화한 후 serialize 해서 디비에 넣고 갖고 와서는 unserialize 하면 안 될까요?

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

답변에 대한 댓글 1개

럭셔리보더
6년 전
버전은 5.7 이네요. 한번 해보겠습니다 ^^

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

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

로그인