안드로이드 개발 질문/답변
(글 수 45,052)
package exam.JsonTest;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
import java.io.UnsupportedEncodingException;
import java.net.HttpURLConnection;
import java.net.InetAddress;
import java.net.URL;
import java.net.URLConnection;
import java.net.URLEncoder;
import java.util.Vector;
import org.apache.http.HttpEntity;
import org.apache.http.NameValuePair;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.ResponseHandler;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.BasicResponseHandler;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.impl.conn.DefaultClientConnection;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
import android.app.Activity;
import android.content.res.AssetManager;
import android.content.res.AssetManager.AssetInputStream;
import android.os.Bundle;
import android.text.Editable;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
public class JsonTestActivity4 extends Activity implements OnClickListener {private TextView mTv;
private URL url;
private HttpURLConnection conn;
private Button mBt;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.json_test4);
mTv = (TextView)findViewById(R.id.tv);
mBt = (Button)findViewById(R.id.parseBtn);
mBt.setOnClickListener(this);
}
// 데이터 보냄..
private String sendData(String id , String pass)throws ClientProtocolException , IOException
{HttpClient client = new DefaultHttpClient();
HttpPost request = makeHttpPost(id , pass , "http://192.168.0.226:8080/receiver.php");
ResponseHandler<String>reshandlHandler = new BasicResponseHandler();
String result = client.execute(request , reshandlHandler);
return result;
}
private HttpPost makeHttpPost(String $id, String $pass, String $url) {// TODO Auto-generated method stub
HttpPost request = new HttpPost($url);
Vector<NameValuePair>nameValue = new Vector<NameValuePair>();
nameValue.add(new BasicNameValuePair("id", $id)); nameValue.add(new BasicNameValuePair("pass", $pass));request.setEntity(makeEntity(nameValue));
Log.e("request","request : "+request.toString());return request;
}
private HttpEntity makeEntity(Vector<NameValuePair> $nameValue) {// TODO Auto-generated method stub
HttpEntity result = null;
try
{result = new UrlEncodedFormEntity($nameValue);
Log.e("result","result : "+result.toString()); }catch (UnsupportedEncodingException e) {// TODO: handle exception
e.printStackTrace();
}
return result;
}
@Override
public void onClick(View v) {// TODO Auto-generated method stub
String id = ((EditText)findViewById(R.id.id_et)).getText().toString();
String pass = ((EditText)findViewById(R.id.pass_et)).getText().toString();
try {//데이터를 웹서버에 보내고 , 받아온 데이터 출력
mTv.setText(sendData(id , pass));
} catch (ClientProtocolException e) {// TODO: handle exception
e.printStackTrace();
}catch (IOException e) {// TODO: handle exception
e.printStackTrace();
}
}
}
php 파일.
값 던지고 , 받는데 ,
php 소스가 그대로 보여지는데.
혹시 , 무슨 문제가 있을까요~??ㅠㅠ
id/pass 입력한 값이 보여야 합니다..




php의 구조상으로는 저렇게 나올수가 없습니다.
html로 직접 디버그용 모듈을 코딩해보시고
(<form method="post">태그를 사용해서) php소스로뜨는지 아니면 결과가 성공적으로 나오는지
확인하셔야 할듯합니다.
아마 브라우저에서 해도 php소스로 뜰꺼같네요