POST Übergabe an PHP funktioniert nicht

  • Antworten:0
VBro
  • Forum-Beiträge: 1

09.12.2012, 16:36:53 via Website

Hallo,

ich bin relativ neu in der Android- und leider auch in der Javaprogrammierung. Bisher funktioniert auch alles recht reibunglos, das Auslesen von Daten einer MySQL Datenbank habe ich auch geschafft.

Jetzt geht es darum Datensätze anzulegen, und da komme ich schon seit Stunden nicht weiter. Die betreffende Funktion in Java sieht so aus:
1if (msg.length()>0){
2 // ÜBERGABE AN LYNX-Server
3 try{
4 String body = "id=" + URLEncoder.encode( "value1", "UTF-8" ) + "&" +
5 "message=" + URLEncoder.encode( "value2", "UTF-8" );
6
7 URL url = new URL( "insert.php" );
8 HttpURLConnection connection = (HttpURLConnection) url.openConnection();
9 connection.setRequestMethod( "POST" );
10 connection.setDoInput( true );
11 connection.setDoOutput( true );
12 connection.setUseCaches( false );
13 connection.setRequestProperty( "Content-Type",
14 "application/x-www-form-urlencoded" );
15 connection.setRequestProperty( "Content-Length", String.valueOf(body.length()) );
16
17 OutputStreamWriter writer = new OutputStreamWriter( connection.getOutputStream() );
18 writer.write( body );
19 writer.flush();
20
21 msgBox.setText("Success!");
22 }
23 catch(Exception e){
24 e.printStackTrace();
25 }

Diese ruft eine insert.php auf, in der nur folgendes steht:
1mysql_connect("localhost","user","passwort") or die ("Keine Verbindung zur Datenbank!");
2mysql_select_db("app-test");
3
4//Hier müsste man natürlich noch filtern (SQL-Injection)
5$id=$_POST['id'];
6$message=$_POST["message"];
7
8mysql_query('INSERT into conversations (sender, text) values (' . $id . ',' . $message . ')');
9
10
11mysql_close();

Das PHP-Skript funktioniert auch an und für sich alleine. Sofern ich das ganze nun aus der App aufrufe, wird partout nichts eingetragen. Auch ein entsprechender Catch-Block wird nicht ausgeführt, sondern es wird auch in msgbox "Success!" angezeigt. Den Beispielcode habe ich aus einem Buch und Eclipse meldet ebenfalls keinen Fehler, in den Logs steht ebenfalls nichts. Bin mit meinem Latein am Ende, vielleicht kann mir mal jemand unter die Arme greifen?

Ich danke Euch im Voraus!

— geändert am 09.12.2012, 16:37:13

Antworten