android und mysql/php

  • Antworten:6
Schorn Stein
  • Forum-Beiträge: 20

16.12.2012, 19:42:59 via Website

Hallo Leute
Ich bräuchte etwas Hilfe
Und zwar möchte ich von meiner App aus Daten zu Meiner Datenbank schicken und dann speichern.
Ich habe Kenntnisse über PHP und MySQL allerdings weiß ich nicht wie ich meine App dazu bringen kann, dass Daten gesendet werden.
über eure Hilfe wurde ich mich sehr freuen

lg

Antworten
Stefan S.
  • Forum-Beiträge: 560

17.12.2012, 07:34:47 via Website

Hi und willkommen bei AndroidPit.
Versuch doch mal die Google-Suchfunktion.Da findest du allerlei Material
http://lmgtfy.com/?q=android+send+data+php

Antworten
Schorn Stein
  • Forum-Beiträge: 20

17.12.2012, 21:13:22 via Website

Danke für eure Antwort.
Ich habe den Code von dieser Seite ausprobiert:

import java.io.IOException;
import org.apache.http.client.ClientProtocolException;

import java.util.ArrayList;
import java.util.List;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;

import org.apache.http.NameValuePair;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.message.BasicNameValuePair;

// import everything you need
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;

public class MainActivity extends Activity {

Button sendButton;

EditText msgTextField;

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
// load the layout
setContentView(R.layout.activity_main);

// make message text field object
msgTextField = (EditText) findViewById(R.id.msgTextField);
// make send button object
sendButton = (Button) findViewById(R.id.sendButton);

}

// this is the function that gets called when you click the button
public void send(View v)
{
// get the message from the message text box
String msg = msgTextField.getText().toString();

// make sure the fields are not empty
if (msg.length()>0)
{
HttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost("blabla");
try {
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("id", "12345"));
nameValuePairs.add(new BasicNameValuePair("message", msg));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
httpclient.execute(httppost);
msgTextField.setText(""); // clear text box
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}

}
else
{
// display message if text fields are empty
Toast.makeText(getBaseContext(),"All field are required",Toast.LENGTH_SHORT).show();
}

}




Dieser Code ist simple und leicht zu verstehen, aber es funktioniert leider nicht^^. Beim absenden der "Message" stürtzt das Programm ab.
Woran könnte es liegen?

Antworten
Schorn Stein
  • Forum-Beiträge: 20

17.12.2012, 22:32:37 via App

hat sich erledigt :)
danke trotzdem

Antworten
Gelöschter Account
  • Forum-Beiträge: 5.136

17.12.2012, 22:34:21 via Website

Irgendwie ist meine Glaskugel gerade dunkel...

Was steht denn im Logcat zu dem Problem ? Dort musst Du mal nachsehen !!

Hier kannst Du nachlesen, wie man das Logcat unter anderem in Eclipse auslesen kann.

lg Voss

Antworten
Schorn Stein
  • Forum-Beiträge: 20

17.12.2012, 22:42:02 via Website

Danke Jörg Voss, ich habe das Problem gelöst.
Ich musste ein AsyncTask verwenden.:)

Antworten