【问题标题】:Android unable to insert data into Mysql data base but data inserted in logcatAndroid无法将数据插入Mysql数据库但数据插入logcat
【发布时间】:2015-02-24 04:59:44
【问题描述】:

<?php
$con=mysqli_connect("localhost","root","","cleanindia");
// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

// escape variables for security

$landmark = mysqli_real_escape_string($con, $_POST['landmark']);
$description = mysqli_real_escape_string($con, $_POST['description']);
$phonenumber= mysqli_real_escape_string($con, $_POST['phonenumber']);
$simnumber= mysqli_real_escape_string($con, $_POST['simnumber']);
$imeinumber= mysqli_real_escape_string($con, $_POST['imeinumber']);
$latitude= mysqli_real_escape_string($con, $_POST['latitude']);




$sql="INSERT INTO details (land_mark, descrip, phonenum, sim, imei, lati)
VALUES ('$landmark', '$description', '$phonenumber', '$simnumber', '$imeinumber', '$latitude')";

/*$sql="INSERT INTO details (land_mark, descrip, phonenum, sim, imei)
VALUES ('abc', 'demo', '9876543210', '01234567890', '954756221102')";*/


$data = "Select * from details";
$datacount = mysqli_query($con,$data);
if (!mysqli_query($con,$data )) {
  die('Error: ' . mysqli_error($con));
}
echo $data1 = mysqli_num_rows($datacount);


mysqli_close($con);
?>

我有一个代码,我需要将编辑文本值发送到服务器。但这没问题。但是当我将数据发布到服务器时,它并没有在服务器中更新。它只是在 logcat 中更新。所以请帮助我。谢谢

import java.util.ArrayList;
import java.util.List;

import org.apache.http.HttpVersion;
import org.apache.http.NameValuePair;
import org.apache.http.client.HttpClient;
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.message.BasicNameValuePair;
import org.apache.http.params.BasicHttpParams;
import org.apache.http.params.CoreProtocolPNames;
import org.apache.http.params.HttpParams;

import com.igibpo.cleanindia.Details;

import android.app.Activity;
import android.app.ProgressDialog;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class Details extends Activity {

    HttpClient httpclient;
    HttpPost httppost;
    EditText lmark, des;
    String result;
    Button Submit;
    ProgressDialog pDialog;
    String geted1, geted2;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.details);

        lmark = (EditText) findViewById(R.id.landmark);
        des = (EditText) findViewById(R.id.description);
        Submit = (Button) findViewById(R.id.button1);
        httppost = new HttpPost("server");
        Submit.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View arg0) {
                // TODO Auto-generated method stub
                geted1 = lmark.getText().toString();
                geted2 = des.getText().toString();
                Log.i("LandMark", geted1);
                Log.i("Description", geted2);
                new getresult().execute();
            }
        });
    }

    public class getresult extends AsyncTask<Void, Void, Void> {

        protected void onPreExecute() {
            super.onPreExecute();
            pDialog = new ProgressDialog(Details.this);
            pDialog.setMessage("Inserting Data....");
            pDialog.setIndeterminate(false);
            pDialog.setCancelable(true);
            pDialog.show();

        }

        @Override
        protected Void doInBackground(Void... arg0) {
            // TODO Auto-generated method stub
            try {
                HttpParams params = new BasicHttpParams();
                params.setParameter(CoreProtocolPNames.PROTOCOL_VERSION,HttpVersion.HTTP_1_1);
                httpclient = new DefaultHttpClient(params);
                List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
                nameValuePairs.add(new BasicNameValuePair("landmark", geted1));
                nameValuePairs.add(new BasicNameValuePair("description", geted2));
                httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs,"utf-8"));
                result = httpclient.execute(httppost,new BasicResponseHandler());

            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
                Log.e("Exception", e.toString());
            }
            return null;
        }
        protected void onPostExecute(String result) {
            // dismiss the dialog once done
            pDialog.dismiss();

    }   

    }

}

【问题讨论】:

  • 请在上面找到代码...@nag
  • 它显示 InputEventReciver “尝试完成输入事件,但输入事件接收器已被释放”
  • 显示将数据填充到数据库的代码并附加日志。
  • 02-24 10:42:52.378:W/InputEventReceiver(28247):尝试完成输入事件,但输入事件接收器已被释放。 02-24 10:42:52.818: W/IInputConnectionWrapper(28247): showStatusIcon on inactive InputConnection 02-24 10:42:52.818: W/IInputConnectionWrapper(28247): beginBatchEdit on inactive InputConnection 02-24 10:42:52.828: W /IInputConnectionWrapper(28247): endBatchEdit on inactive InputConnection
  • 02-24 10:42:36.878: I/LandMark(28247): ben 02-24 10:42:36.878: I/Description(28247): benbena

标签: java android xml json


【解决方案1】:

使用 mysql 语句 在您的代码中,不要忘记关闭语句 Connections 实例。正确关闭它们,然后只有更改将保存在您的数据库中。

UPDATE:

使用下面的代码使用 jdbc 语句将数据插入服务器数据库

try{
 Connection con=DriverManager.getConnection(dburl,dbuname,dbpass);
 Statement stmt=con.createStatement();
 stmt.executeUpdate("write insert statement here");

 //close the connection here
  con.close();
  stmt.close(); 

 }catch(Exception e){
   //write console statement here
 }

【讨论】:

  • 如何关闭连接实例
  • 我这里没有使用连接。我正在使用 http 帖子。请检查 that.else 向我发送将数据从 android 发布到 xampp 服务器的总代码。
  • sqlite 是安卓最好的数据库,试试 sqlite。
  • 你能给我一个例子吗@balayesu
  • 按照上面的教程进行sqlite与android的连接。
猜你喜欢
  • 2015-07-22
  • 1970-01-01
  • 1970-01-01
  • 2018-10-14
  • 1970-01-01
  • 2017-10-27
  • 1970-01-01
  • 2016-04-17
  • 2023-04-10
相关资源
最近更新 更多