안드로이드에서 json데이터를 전송 후 php에서 받을때~

안드로이드에서 json데이터를 전송 후 php에서 받을때~

QA

안드로이드에서 json데이터를 전송 후 php에서 받을때~

본문

... 생략 ...

JSONObject json = new JSONObject();

json.put( "name", "이름");

json.put( "phone","폰");

... 생략 ...

 

안드로이드에서 이와같이 json데이터를 전송해서 php에 데이터를 받을때 어떻게 받아야 하나요..?

아무리 해도 데이터가 "name->이름"라는 것을 가져오질 못합니다.

이 질문에 댓글 쓰기 :

답변 3

php에서 json처리는 먼저
json_decode() 함수를 이용하여 디코딩 시키고
디코딩 시킨 값을 참조하기 위해서는 연관배열 참조하듯 하시면 됩니다.
javascript에서 json값을 참조하는 것과는 조금 다르죠 ^^
Document doc = null;
try {
doc = Jsoup.connect("http://naver.com")
.data("mb_id", memberId)
.data("bo_table", boTable)
.data("page", Integer.toString(params[0]))
.method(Method.POST)
.userAgent("Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.2 (KHTML, like Gecko) Chrome/15.0.874.120 Safari/535.2")
.timeout(5000)
.post();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

doc.outputSettings().charset("UTF-8");
String result = doc.body().text();

JSONObject obj = new JSONObject(result);

String name = obj.getString("name");
String mb_id= obj.getString("mb_id");

형태가 되어야 할것 같습니다

저건 post로 던지는 거고 

get으로 던질때는 .. 

jsoup를 참고해 보세요
<?php
$mb_id = $_POST['mb_id'];
$bo_table = $_POST['bo_table'];

$result= array('resut'=>true, 'member'=>array('mb_id'=>$mb_id));

echo json_encode($result);
exit;
?>

이렇게... 인데요..

php는 대소문자를 구분 합니다.

$_POST
$_GET


php.ini 에 regist_globals = on

이면

그냥 $mb_id

쓰시면 되고,

extract($_POST); 하셔서

$mb_id 쓰셔도 됩니다..


print_r($_POST);
print_r($_GET);


Uri uri = Uri.parse("http://www.test.com?id=1&page=2");
Intent it  = new Intent(Intent.ACTION_VIEW,uri);
startActivity(it);

해보셔서 변수값 찍어 보세요

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

회원로그인

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