【发布时间】:2017-03-06 15:36:56
【问题描述】:
我正在开发一个 android 应用程序,用户将在其中从 android 向 mysql 中插入值。一切都好。但是当用户插入值时,表中插入了空白值。这是我的php代码:
<?php
require "init.php";
$host = "localhost";
$user = "githucco_furqan";
$password = "githuc.com123";
$db = "githucco_app";
$sql_query= "insert into sample values('$name','$email','$mobile');";
if(mysqli_query($con,$sql_query))
{
echo"<h3>Data insertion successfully</h3>";
}
else
{
echo"<h3>Data insertion error...</h3>".mysqli_error($con);
}
?>
我的java代码是:
package com.example.muhammadfurqan.fanuc;
import android.os.AsyncTask;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.io.OutputStreamWriter;
import java.net.HttpURLConnection;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLEncoder;
public class Add_Info extends AppCompatActivity {
EditText name,email,number;
Button add_button;
String p_name,mail,cell_number;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add__info);
name = (EditText)findViewById(R.id.name);
email = (EditText)findViewById(R.id.email);
number = (EditText)findViewById(R.id.number);
add_button = (Button)findViewById(R.id.add_btn);
}
public void saveinfo(View view){
p_name = name.getText().toString();
mail = email.getText().toString();
cell_number = number.getText().toString();
BackgroundTask backgroundTask = new BackgroundTask();
backgroundTask.execute(p_name,mail,cell_number);
}
class BackgroundTask extends AsyncTask<String, Void, String> {
String add_info_url;
@Override
protected void onPreExecute() {
add_info_url = "http://app.githuc.com/android_database_connection/add_info.php";
}
@Override
protected void onPostExecute(String result) {
Toast.makeText(getApplicationContext(),result,Toast.LENGTH_LONG).show();
}
@Override
protected void onProgressUpdate(Void... values) {
super.onProgressUpdate(values);
}
@Override
protected String doInBackground(String... arg) {
String name, email, mobile;
name = arg[0];
email = arg[1];
mobile = arg[2];
try {
URL url = new URL(add_info_url);
HttpURLConnection httpURLConnection = (HttpURLConnection) url.openConnection();
httpURLConnection.setRequestMethod("POST");
httpURLConnection.setDoOutput(true);
OutputStream outputStream = httpURLConnection.getOutputStream();
BufferedWriter bufferedWriter = new BufferedWriter(new OutputStreamWriter(outputStream,"LATIN"),8);
String data_String = URLEncoder.encode("name","UTF-8")+"="+URLEncoder.encode(name,"UTF-8")+"&"+
URLEncoder.encode("email","UTF-8")+"="+URLEncoder.encode(email,"UTF-8")+"&"+
URLEncoder.encode("mobile","UTF-8")+"="+URLEncoder.encode(mobile,"UTF-8");
bufferedWriter.write(data_String);
bufferedWriter.flush();
bufferedWriter.close();
outputStream.close();
InputStream inputStream = httpURLConnection.getInputStream();
inputStream.close();
httpURLConnection.disconnect();
Log.d("name = ",name);
Log.d("email = ",email);
return "Data has been inserted successfuly";
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
}
}
【问题讨论】:
标签: android mysql phpmyadmin