Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/272.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在android应用程序中从php文件读取JSON数据_Java_Php_Android_Mysql_Json - Fatal编程技术网

Java 在android应用程序中从php文件读取JSON数据

Java 在android应用程序中从php文件读取JSON数据,java,php,android,mysql,json,Java,Php,Android,Mysql,Json,我只是开发android应用程序的初学者,我想将我的应用程序连接到服务器,这样我就可以从MySQL获取数据。所以我试图让登录部分第一,但我有一些问题。我的代码不适用于读取JSON。 我的代码如下: 后勤活动(主要活动): 还有我的login.php脚本: <?php define("HOST","localhost"); define("USERNAME","root"); define("PASSWORD",""); define("NAME","users"); $con = mys

我只是开发android应用程序的初学者,我想将我的应用程序连接到服务器,这样我就可以从MySQL获取数据。所以我试图让登录部分第一,但我有一些问题。我的代码不适用于读取JSON。 我的代码如下: 后勤活动(主要活动):

还有我的login.php脚本:

<?php
define("HOST","localhost");
define("USERNAME","root");
define("PASSWORD","");
define("NAME","users");

$con = mysqli_connect(HOST,USERNAME,PASSWORD,NAME);

$username = $_GET["username"];
$password = $_GET["password"];

$sql = "SELECT * FROM userinfo WHERE username ='$username' AND password='$password'";

$check = mysqli_fetch_array(mysqli_query($con,$sql));


if(isset($check)){
echo '{"result":[{"response":"true"}]}';
}else{
echo '{"result":[{"response":"false"}]}';
}

mysqli_close($con);

?>

如果我发现这个问题,我会很高兴的。谢谢。

请参阅教程: 这是关于使用登录过程的完整教程参见教程:
这是一个关于使用登录过程的完整教程。首先:在设备端,使用volley,它简单易用

第二:在服务器上,什么是
{“result”:[{“response”:“true”}

{“结果”:true}
有问题吗


最后但并非最不重要的一点:您以前是否使用过JSON,或者此代码是一些教程中的试错复制粘贴?

首先:在设备端,使用volley,它简单易用

第二:在服务器上,什么是
{“result”:[{“response”:“true”}

{“结果”:true}
有问题吗


最后但并非最不重要的一点:您以前是否使用过JSON,或者此代码是一些教程中的试错复制粘贴?

您的解决方案中到底有什么不起作用?你试过调试你的代码吗?@Egor你知道,正如我说的,我只是一个基本的。老实说,我没有,但我会在下一次询问之前做。在你的解决方案中,什么不起作用?你试过调试你的代码吗?@Egor你知道,正如我说的,我只是一个基本的。老实说,没有,但我会在下一次提问之前做。我尝试了第二个(结果:true),但没有得到答案,我尝试了一个json数组。最后一个:不需要json编码,所以我自己写。我做错了什么?首先,你不能使用jsonarray进行单一响应。然后,您的响应将决定您如何在设备上接收它。如果要将json作为字符串传递,则必须在设备上解析该字符串。如果您将对象作为json发送,那么您可以直接在设备上接收它。我尝试了第二种方法(结果:true),但没有得到答案,我尝试了使用json数组的方法。最后一个:不需要json编码,所以我自己写。我做错了什么?首先,你不能使用jsonarray进行单一响应。然后,您的响应将决定您如何在设备上接收它。如果要将json作为字符串传递,则必须在设备上解析该字符串。如果您将对象作为json发送,那么您可以直接在设备上接收它。不过,建议采用后者。
package ir.naserpour.sportclub;

import android.util.Log;

import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.json.JSONException;
import org.json.JSONObject;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;

/**
 * Created by Mohammad Naserpour on 9/22/2016.
 */
public class JSONParser {
    static InputStream is = null;
    static JSONObject jObj = null;
    static String json = "";
    // constructor
    public JSONParser() {
    }
    public JSONObject getJSONFromUrl(String url) {
        // Making HTTP request
        try {
            // defaultHttpClient
            DefaultHttpClient httpClient = new DefaultHttpClient();
            HttpPost httppost = new HttpPost(url);
            HttpResponse httpResponse = httpClient.execute(httppost);
            HttpEntity httpEntity = httpResponse.getEntity();
            is = httpEntity.getContent();
        } catch (UnsupportedEncodingException e) {
            e.printStackTrace();
        } catch (ClientProtocolException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
        try {
            BufferedReader reader = new BufferedReader(new InputStreamReader(
                    is, "iso-8859-1"), 8);
            StringBuilder sb = new StringBuilder();
            String line = null;
            while ((line = reader.readLine()) != null) {
                sb.append(line + "\n");
            }
            is.close();
            json = sb.toString();
        } catch (Exception e) {
            Log.e("Buffer Error", "Error converting result " + e.toString());
        }
        // try parse the string to a JSON object
        try {
            jObj = new JSONObject(json);
        } catch (JSONException e) {
            Log.e("JSON Parser", "Error parsing data " + e.toString());
        }
        // return JSON String
        return jObj;
    }
}
<?php
define("HOST","localhost");
define("USERNAME","root");
define("PASSWORD","");
define("NAME","users");

$con = mysqli_connect(HOST,USERNAME,PASSWORD,NAME);

$username = $_GET["username"];
$password = $_GET["password"];

$sql = "SELECT * FROM userinfo WHERE username ='$username' AND password='$password'";

$check = mysqli_fetch_array(mysqli_query($con,$sql));


if(isset($check)){
echo '{"result":[{"response":"true"}]}';
}else{
echo '{"result":[{"response":"false"}]}';
}

mysqli_close($con);

?>