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

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

senseme 11년 전 조회 12,868

... 생략 ...

JSONObject json = new JSONObject();

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

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

... 생략 ...

 

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

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

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

답변 3개

채택된 답변
+20 포인트
11년 전
php에서 json처리는 먼저
json_decode() 함수를 이용하여 디코딩 시키고
디코딩 시킨 값을 참조하기 위해서는 연관배열 참조하듯 하시면 됩니다.
javascript에서 json값을 참조하는 것과는 조금 다르죠 ^^
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
senseme
11년 전
ㅎㅎ감사합니다.
데이터를 앱에서 post방식으로 전송시 php로 받는 부분이였는데.
질문을 잘못 풀이했나봐요.ㅎㅎ
그래도 답변 달아주셔서 감사합니다.

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

11년 전
<?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;
?>

이렇게... 인데요..
로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

s
senseme
11년 전
파라메타가아닌 json.put 이와같이 보낼경우에는 $_post방식으론 안받아지더라구요..ㅎㅎ
이코아리
11년 전
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);

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

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

11년 전
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를 참고해 보세요
로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

s
senseme
11년 전
post로 던진것을 php에서 받는 방식을 질문드린거라서요..
ㅎㅎㅎ좋은 코드 적어주신거 그래도 익혀두고는 알아두고는 있어야겠네요^^
감사합니다.

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

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

로그인