자바스크립트에서 이중배열을 받아서 처리하고 싶습니다.

매출이 오르면 내리는 수수료! 지금 수수료센터에서 전자결제(PG)수수료 비교견적 신청해 보세요!
자바스크립트에서 이중배열을 받아서 처리하고 싶습니다.

QA

자바스크립트에서 이중배열을 받아서 처리하고 싶습니다.

본문

ajax로 페이지를 만들고 있는데 


$.ajax({
    url : "sql.php",
    type : "post",
    data : {
      sql : "select * from member",
    }
  }).done(function(result){
    console.log(result);
  });

 

sql.php 부분은


<?php
include_once($_SERVER[DOCUMENT_ROOT]."/999/dbconfig.php");
$sql = $_POST['sql'];
$result = mysqli_query($connect, $sql);
while ($row = mysqli_fetch_array($result)) {
  // code...
  $member_tb[] = array('no' => $row['no'], 'id' => $row['id'], 'name' => $row['name'], 'address' => $row['address'], 'tel' => $row['tel']);
}
print_r($member_tb);
?>

 

sql.php에서 리턴되는 값은

 

Array
(
    [0] => Array
        (
            [no] => 1
            [id] => bkcha
            [name] => 고길동
            [address] => 대전시 서구 둔산1동
            [tel] => 000-9877
        )

    [1] => Array
        (
            [no] => 2
            [id] => bykang
            [name] => 홍길동
            [address] => 대전시 서구 둔산동
            [tel] => 000-3243
        )   

)

 

이런식이라면

 

리턴되는 자바스크립트 부분에서는 

이 값을 어떻게 사용할 수 있을까요?

 

위 값들은 콘솔에 찍어본 리턴값들인데

 

특정값을 접근해서 출력하려면?

 

특정값 접근이 가능하다면 $.each나 포문을 이용해서

출력 가능할거 같은데...어떤가요?
 

 

이 질문에 댓글 쓰기 :

답변 2

음.. 그누보드에서 sql 함수를 왜 안하는진 모르겠지만~ 개인 공부를 하신다고 생각해서 얘기 드리자만

제이쿼리 에이젝스 에서 이렇게 쿼리를 주시면 안되요 ㅋㅋㅋ 이건 어떠한 값을 data 에다가 적용하시던지 해야되요

 data : {
      sql : "select * from member",
    }

 

data : { test: '테스트' } << 이렇게 대충 예제로..

 

백단에서 이렇게 하는게 정답이에요 

$sql = "select * from member"; 
$result = mysqli_query($connect, $sql);

 

와일문 안에 배열도 

$member_tb[] << 이걸 초기화 해야되요
$member_tb = []; 혹은 $member_tb = array(); << 이렇게 해야되요

결국엔 아래 처럼 하시면 되요


$member_tb = [];

while ($row = mysqli_fetch_array($result)) {
  // code...
  $member_tb[] = array('no' => $row['no'], 'id' => $row['id'], 'name' => $row['name'], 'address' => $row['address'], 'tel' => $row['tel']);
}

 

그리고 마지막으로 제이쿼리 에이젝스를 뿌려주려면 each문으로 뿌려주시던지 아님 자스로 for, foreach문으로..

 

$.each(result, function() {

   console.log(result)

});

 

콘솔로그 찍어서 배열이 어떻게 나오는지 확인해서 뿌려보세요

너무 어렵지 않으니~ 구글링도 해보시구요 예제 많습니다~

 

 

 

 

 

ajax 에서 이중배열을 받아서 처리하는 것은..

방법이 없는 것은 아니지만.. 상대적으로 많이 어렵습니다.

 

ajax 에서 데이터 출력까지 처리한뒤,

출력된 문자열을 받아서 보여주는 것이 상대적으로 쉬운 편입니다.

 

 


<div id="div1">ajax 에서 처리된 내용 이곳에 노출</div>
<script>
$.ajax({
    url : "sql.php",
    type : "post",
    data : {
      sql : "select * from member",
    }
  }).done(function(result){
    $('#div1').html(result);
  });
</script>

 

답변을 작성하시기 전에 로그인 해주세요.
전체 3
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT