Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/392.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访问远程mysql数据库_Java_Php_Android_Mysql - Fatal编程技术网

Java Android访问远程mysql数据库

Java Android访问远程mysql数据库,java,php,android,mysql,Java,Php,Android,Mysql,我一直在尝试使用多个示例,通过android应用程序访问远程服务器(digitalocean)。目前,我在解析URL中的数据时遇到了一个错误,我不能100%确定原因。你能帮我一下吗,代码在下面 java代码: public class MainActivity extends Activity { TextView txt1,txt2,txt3; public void onCreate(Bundle savedInstanceState) { super.onCreate(saved

我一直在尝试使用多个示例,通过android应用程序访问远程服务器(digitalocean)。目前,我在解析URL中的数据时遇到了一个错误,我不能100%确定原因。你能帮我一下吗,代码在下面

java代码:

public class MainActivity extends Activity {
 TextView txt1,txt2,txt3;
 public void onCreate(Bundle savedInstanceState)
 {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  new task().execute();
 }

class task extends AsyncTask<String, String, Void>
{
 private ProgressDialog progressDialog = new ProgressDialog(MainActivity.this);
    InputStream is = null ;
    String result = "";
    protected void onPreExecute() {
       progressDialog.setMessage("Fetching data...");
       progressDialog.show();
       progressDialog.setOnCancelListener(new OnCancelListener() {
 @Override
  public void onCancel(DialogInterface arg0) {
  task.this.cancel(true);
    }
 });
     }
    @Override
    protected Void doInBackground(String... params) {
      String url_select = "http://server1.chris.waszczuk/webservice/select.php";

      HttpClient httpClient = new DefaultHttpClient();
      HttpPost httpPost = new HttpPost(url_select);

             ArrayList<NameValuePair> param = new ArrayList<NameValuePair>();

        try {
     httpPost.setEntity(new UrlEncodedFormEntity(param));

     HttpResponse httpResponse = httpClient.execute(httpPost);
     HttpEntity httpEntity = httpResponse.getEntity();

     //read content
     is =  httpEntity.getContent();     

     } catch (Exception e) {

     Log.e("log_tag", "Error in http connection "+e.toString());
     }
    try {
        BufferedReader br = new BufferedReader(new InputStreamReader(is));
     StringBuilder sb = new StringBuilder();
     String line = "";
     while((line=br.readLine())!=null)
     {
        sb.append(line+"\n");
     }
      is.close();
      result=sb.toString();    

       } catch (Exception e) {
        // TODO: handle exception
        Log.e("log_tag", "Error converting result "+e.toString());
       }

      return null;

     }
    protected void onPostExecute(Void v) {

  // ambil data dari Json database
  try {
   JSONArray Jarray = new JSONArray(result);
   for(int i=0;i<Jarray.length();i++)
   {
   JSONObject Jasonobject = null;
   txt1 = (TextView)findViewById(R.id.txt1);
   txt2 = (TextView)findViewById(R.id.txt2);
   txt3 = (TextView)findViewById(R.id.txt3);

   Jasonobject = Jarray.getJSONObject(i);

   //get an output on the screen
   String no = Jasonobject.getString("no// this should be same in the table field name");
   String name = Jasonobject.getString("name");
   String birthday = Jasonobject.getString("birthday");

      txt1.setText(no);
      txt2.setText(name);
      txt3.setText(birthday);

   }
   this.progressDialog.dismiss();

  } catch (Exception e) {
   // TODO: handle exception
   Log.e("log_tag", "Error parsing data "+e.toString());
  }
}
}
}
更新:将登录url更改为服务器的IP地址后,会出现新的解析错误

新网址:

String url_select = "http://95.85.22.140/webservice/select.php";
错误:

04-01 14:19:26.206: E/log_tag(1037): Error parsing data org.json.JSONException: Value <!DOCTYPE of type java.lang.String cannot be converted to JSONArray

04-01 14:19:26.206:E/log_标记(1037):解析数据org.json.JSONException:Value正如我在评论中建议的那样,
字符串url_select=”http://server1.chris.waszczuk/webservice/select.php";是错误的。基本上,除非你有一个自己的DNS服务器并且你的所有流量都通过它,
server1.chris.waszczuk
是一个不好的DNS名称

如果您在本地网络中运行此功能,我建议您使用服务器的专用IP地址。这样,您的URL将包含以下内容:

http://192.168.1.X/webservice/select.php

如果您将其作为远程服务器运行,请改用有效的DNS。

String url\u select=”http://server1.chris.waszczuk/webservice/select.php";您确定这确实解析为有效的URL吗?顺便说一句,您应该更新问题,并准确说明错误所在。您确定DigitalOcean托管DMZ之外的Web服务器可用吗。这可能是您的问题,因为它无法在防火墙后解决。有关您遇到的新错误,请查看以下内容:
String url_select = "http://95.85.22.140/webservice/select.php";
04-01 14:19:26.206: E/log_tag(1037): Error parsing data org.json.JSONException: Value <!DOCTYPE of type java.lang.String cannot be converted to JSONArray
http://192.168.1.X/webservice/select.php