 |
จะแก้ไขข้อมูลจาก MySQL ผ่าน Android แต่เรียกข้อมูลไม่ขึ้นครับ ช่วยดูให้ทีครับ |
|
 |
|
|
 |
 |
|
อันนี้โค้ดที่ผมใช้คับครับ
Code (Android-Java)
package com.farmone;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
import org.apache.http.HttpEntity;
import org.apache.http.HttpResponse;
import org.apache.http.NameValuePair;
import org.apache.http.StatusLine;
import org.apache.http.client.ClientProtocolException;
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.DefaultHttpClient;
import org.apache.http.message.BasicNameValuePair;
import org.json.JSONException;
import org.json.JSONObject;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.Intent;
import android.os.Bundle;
import android.os.StrictMode;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.Toast;
public class VacUpdate extends Activity {
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.vac_update);
// Permission StrictMode
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
showInfo();
// btnSave
Button btnSave = (Button) findViewById(R.id.btnsave);
// Perform action on click
btnSave.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
if(SaveData())
{
// When Save Complete
Intent newActivity = new Intent(VacUpdate.this,VacShowData.class);
startActivity(newActivity);
}
}
});
}
public void showInfo()
{
final TextView tName = (TextView)findViewById(R.id.txtName);
final TextView tEff = (TextView)findViewById(R.id.txtEff);
final TextView tDose = (TextView)findViewById(R.id.txtDose);
final TextView tDosetime = (TextView)findViewById(R.id.txtDosetime);
final TextView tUnit = (TextView)findViewById(R.id.txtUnit);
final TextView tPrice = (TextView)findViewById(R.id.txtPrice);
// final Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
Button btnSave = (Button) findViewById(R.id.btnsave);
String url = "http://10.0.2.2/Farmone/getByVaccineName.php";
Intent intent= getIntent();
final String Namee = intent.getStringExtra("Namee");
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("sNamee", Namee));
String resultServer = getHttpPost(url,params);
String strNamee = "";
String strEffect = "";
String strDose = "";
String strDoseTime = "";
String strUnit = "";
String strPrice = "";
JSONObject c;
try {
c = new JSONObject(resultServer);
strNamee = c.getString("Namee");
strEffect = c.getString("Effect");
strDose = c.getString("Dose");
strDoseTime = c.getString("DoseTime");
strUnit = c.getString("Unit");
strPrice = c.getString("Price");
if(!strNamee.equals(""))
{
tName.setText(strNamee);
tEff.setText(strEffect);
tDose.setText(strDose);
tDosetime.setText(strDoseTime);
tUnit.setText(strUnit);
tPrice.setText(strPrice);
}
else
{
tName.setText("-");
tEff.setText("-");
tDose.setText("-");
tDosetime.setText("-");
tUnit.setText("-");
tPrice.setText("-");
btnSave.setEnabled(false);
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public boolean SaveData()
{
final TextView txtName = (TextView)findViewById(R.id.txtName);
final EditText txtEff = (EditText)findViewById(R.id.txtEff);
final EditText txtDose = (EditText)findViewById(R.id.txtDose);
final EditText txtDosetime = (EditText)findViewById(R.id.txtDosetime);
final EditText txtUnit = (EditText)findViewById(R.id.txtUnit);
final EditText txtPrice = (EditText)findViewById(R.id.txtPrice);
//final Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
// Spinner Nipple
// final Spinner spinner1 = (Spinner) findViewById(R.id.spinner1);
// Dialog
final AlertDialog.Builder ad = new AlertDialog.Builder(this);
ad.setTitle("Error! ");
ad.setIcon(android.R.drawable.btn_star_big_on);
ad.setPositiveButton("Close", null);
// Check House
if(txtName.getText().length() == 0)
{
ad.setMessage("กรุณากรอกข้อมูลโรงเรือน");
ad.show();
txtName.requestFocus();
return false;
}
String url = "http://10.0.2.2/Farmone/updateVaccine.php";
List<NameValuePair> params = new ArrayList<NameValuePair>();
params.add(new BasicNameValuePair("sNamee", txtName.getText().toString()));
params.add(new BasicNameValuePair("sEffect", txtEff.getText().toString()));
params.add(new BasicNameValuePair("sDose", txtDose.getText().toString()));
params.add(new BasicNameValuePair("sDoseTime", txtDosetime.getText().toString()));
params.add(new BasicNameValuePair("sUnit", txtUnit.getText().toString()));
//txtNipple >> spinner1
// params.add(new BasicNameValuePair("sSex", spinner1.getSelectedItem().toString()));
params.add(new BasicNameValuePair("sPrice", txtPrice.getText().toString()));
//txtNipple >> spinner1
// params.add(new BasicNameValuePair("sSex", spinner1.getSelectedItem().toString()));
/** Get result from Server (Return the JSON Code)
* StatusID = ? [0=Failed,1=Complete]
* Error = ? [On case error return custom error message]
*
* Eg Save Failed = {"StatusID":"0","Error":"Email Exists!"}
* Eg Save Complete = {"StatusID":"1","Error":""}
*/
String resultServer = getHttpPost(url,params);
/*** Default Value ***/
String strStatusID = "0";
String strError = "Unknow Status!";
JSONObject c;
try {
c = new JSONObject(resultServer);
strStatusID = c.getString("StatusID");
strError = c.getString("Error");
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// Prepare Save Data
if(strStatusID.equals("0"))
{
ad.setMessage(strError);
ad.show();
return false;
}
else
{
Toast.makeText(VacUpdate.this, "แก้ไขข้อมูลเรียบร้อย", Toast.LENGTH_SHORT).show();
}
return true;
}
public String getHttpPost(String url,List<NameValuePair> params) {
StringBuilder str = new StringBuilder();
HttpClient client = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
try {
httpPost.setEntity(new UrlEncodedFormEntity(params));
HttpResponse response = client.execute(httpPost);
StatusLine statusLine = response.getStatusLine();
int statusCode = statusLine.getStatusCode();
if (statusCode == 200) { // Status OK
HttpEntity entity = response.getEntity();
InputStream content = entity.getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(content));
String line;
while ((line = reader.readLine()) != null) {
str.append(line);
}
} else {
Log.e("Log", "Failed to download result..");
}
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return str.toString();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item)
{
switch (item.getItemId())
{
case R.id.menu1:
Toast.makeText(VacUpdate.this, "กลับสู่เมนูหลัก", Toast.LENGTH_SHORT).show();
Intent newActivity = new Intent(VacUpdate.this,MainMenu.class);
startActivity(newActivity);
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
|
ประวัติการแก้ไข 2014-11-22 20:27:53
 |
 |
 |
 |
Date :
2014-11-22 20:25:40 |
By :
Kyoshiro11 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
จาก Error เหมือนว่าจะมีปัญหาตั้งแต่ php แปลงค่าเป็น JSON ครับ มันมี Error หรือเปล่าครับ
|
 |
 |
 |
 |
Date :
2014-11-22 22:00:35 |
By :
mr.win |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|