[英]cannot retrieve json_encode value from php file into android
<?php
require 'connection.php';
$response = array();
$response_array = array();
$insert_query=0;
if(isset($_POST["username"]) && isset($_POST["password"]) && isset($_POST["phone"]))
{
$username = $_POST["username"];
$password = $_POST["password"];
$phone = $_POST["phone"];
$check_existing_user = mysql_query("select * from eh_users where username like '".$username."'");
if(mysql_num_rows($check_existing_user)==0)
{
$insert_query = mysql_query("INSERT INTO eh_users(username, password, phone) VALUES('$username','$password','$phone')");
if($insert_query==1)
{
$response["success"]=1;
$response["message"]="Insert Query Successful";
file_put_contents("myFile.txt", json_encode($response));
echo json_encode($response);
}
else
{
$response["success"]=0;
$response["message"]="Error : Query not successful";
echo json_encode($response);
}
}
}
?>
protected String doInBackground(String ... params){// TODO自动生成的方法存根
try
{
String url="http://www.iloveexpressions.com/eh/signUp.php";
httpclient = new DefaultHttpClient();
httppost = new HttpPost(url);
nameValuePairs = new ArrayList<NameValuePair>(3);
Log.d("Parameters ", username+" "+password+" "+phone);
nameValuePairs.add(new BasicNameValuePair("username", username.trim()));
nameValuePairs.add(new BasicNameValuePair("password", password.trim()));
nameValuePairs.add(new BasicNameValuePair("phone", phone.trim()));
Log.d("name value pairs", nameValuePairs.toString());
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
response = httpclient.execute(httppost);
JSONObject json = jsonParser.getJSONFromUrl(url);
int success = json.getInt("success");
//JSONArray jArray = json.getJSONArray("success");
Log.d("Json object : ",success+"");
/*for(int i = 0; i < jArray.length(); i++ )
{
JSONObject c = jArray.getJSONObject(i);
String success = c.getString("success");
String message = c.getString("message");
Log.d("Sucess : ", success);
Log.d("Message : ", message);
}*/
}
文本文件包含正确的内容{“成功”:1,“消息”:“插入查询成功”}
但我无法在android中检索它
首先使用<new HttpPost.(url)
然后使用httpclient.execute(httppost)
<new HttpPost.(url)
进行登录,然后再将该URL与getJSONFromUrl(url);
一起使用是没有意义的getJSONFromUrl(url);
。 相反,您应该从现有响应中读取json。
HttpResponse response = httpClient.execute(httpPost);
BufferedReader reader = new BufferedReader(new InputStreamReader(response.getEntity().getContent(), "UTF-8"));
StringBuilder sb = new StringBuilder();
String line;
while ((line = reader.readLine()) != null)
{
sb = sb.append(line);
}
String jsonText = sb.toString();
就我而言..我正在使用Http方法,然后使用JSONParser类中的getjsonfromURL,该类也具有用于get和post的Http方法。
我认为有两个电话正在通话,因此没有对象被退回
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.