使用MYSQL服务器使用textView无法插入数据

时间:2012-12-15 11:29:13

标签: java php android mysql json

帮助我..下面代码中的JSON事情有问题。无法解析到php文件..安卓应用程序与phpmyadmin @ MySQL服务器链接....使用php文件。这使用TextView发送数据。数据从其他页面传递。并在下面的textview中保存它。但是数据想要发送。 JSON不起作用,我创建的应用程序停止并检测到故障应用程序。我的PHP文件没有问题,但在这段代码中,我不知道什么问题..它没有达到尝试功能我认为..只是需要帮助我从这个应用程序插入数据到MySQL服务器使用PHP文件。

         @Override
         protected void onPreExecute() {
             super.onPreExecute();
            pDialog = new ProgressDialog(MainActivity3.this);
            pDialog.setMessage("Sending Aduan....");
            pDialog.setIndeterminate(false);
            pDialog.setCancelable(true);
            pDialog.show();
         }

         protected String doInBackground(String... args) {


             String nama = txtView1.getText().toString();
             String alamat = txtView2.getText().toString();
             String no_ic = txtView3.getText().toString();
             String mobile = txtView4.getText().toString();
             String telefon = txtView5.getText().toString();
             String email = txtView6.getText().toString();
             String kenyataan = txtView7.getText().toString();
             String pelaksana = txtView8.getText().toString();
             String lokasi = txtView9.getText().toString();
             String daerah = txtView10.getText().toString();    

             List<NameValuePair> params = new ArrayList<NameValuePair>();
             params.add(new BasicNameValuePair("nama", nama));
             params.add(new BasicNameValuePair("alamat", alamat));
             params.add(new BasicNameValuePair("no_ic", no_ic));
             params.add(new BasicNameValuePair("mobile", mobile));
             params.add(new BasicNameValuePair("telefon", telefon));
             params.add(new BasicNameValuePair("email", email));
             params.add(new BasicNameValuePair("kenyataan", kenyataan));
             params.add(new BasicNameValuePair("pelaksana", pelaksana));
             params.add(new BasicNameValuePair("daerah", daerah));
             params.add(new BasicNameValuePair("lokasi", lokasi));



             JSONObject json = jsonParser.makeHttpRequest(url_create_aduan,"POST", params);

             Log.e("Create Response", json.toString());

             try {
                 int success = json.getInt(TAG_SUCCESS);

                 if (success == 1) {

                   Intent i = new Intent(getApplicationContext(),Rujukan.class);
                 startActivity(i);
                 finish();
                } else {
                }
                } catch (JSONException e) {
                        e.printStackTrace();
                    }
             return null;
         }


         protected void onPostExecute(String file_url) {

             pDialog.dismiss();
         }
     }

1 个答案:

答案 0 :(得分:0)

问题:

您正尝试使用doInBackground的{​​{1}}方法执行与UI相关的任务。

解决方案:

因为无法从UI线程访问UI元素,所以将所有项目从AsyncTask移至doInBackgroundonPreExecute,如下所示:

onPostExecute