K
>>--(knee)-->
Gast
Hallo,
ich weiß nicht ganz ob ich das hier unter 'Spiele' oder 'Netzwerke' Posten soll, sollte ich mich falsch entschieden haben, bitte ich um Verzeihung.
Zu meiner Frage:
Ich habe mir folgende Klasse geschrieben um Werte an ein PhP Skript zu schicken,
dieses soll diese in eine Textdatei schreiben.
Leider bekomme ich keine Fehlermeldung, es tut sich einfach gar nichts.
Wenn ich mich aber vom Netz trenne erscheint (wie erwartet) eine Exception beim Verbinden:
.
Ich hoffe ihr könnt mir Helfen.
Viele Grüße
ich weiß nicht ganz ob ich das hier unter 'Spiele' oder 'Netzwerke' Posten soll, sollte ich mich falsch entschieden haben, bitte ich um Verzeihung.
Zu meiner Frage:
Ich habe mir folgende Klasse geschrieben um Werte an ein PhP Skript zu schicken,
dieses soll diese in eine Textdatei schreiben.
Java:
import java.io.IOException;
import java.io.OutputStream;
import java.net.MalformedURLException;
import java.net.URL;
import java.net.URLConnection;
public class HighscoreSaver {
public static final int SEND_POST = 0;
public static final int SEND_GET = 1;
private String phpPath;
private StringBuilder getString = new StringBuilder();
private StringBuilder postString = new StringBuilder();
public HighscoreSaver(String phpPath) {
this.phpPath = phpPath;
}
public boolean send() {
boolean ret = true;
String path = phpPath + getString;
System.out.println(path);
try {
URL url = new URL(path);
URLConnection con = url.openConnection();
con.setDoOutput(true);
OutputStream out = con.getOutputStream();
out.write(postString.toString().getBytes());
out.flush();
} catch (MalformedURLException e) {
e.printStackTrace();
ret = false;
} catch (IOException e) {
e.printStackTrace();
ret = false;
}
return ret;
}
public void add(String name, String value, int art) {
if (art == SEND_GET) {
addGetVariable(name, value);
} else if (art == SEND_POST) {
addPostVariable(name, value);
}
}
public void addGetVariable(String name, String value) {
appendGetSeparator().append(name).append('=').append(value);
}
public void addPostVariable(String name, String value) {
appendPostSeparator().append(name).append('=').append(value);
}
private StringBuilder appendGetSeparator() {
if (getString.length() == 0)
getString.append('?');
else
getString.append('&');
return getString;
}
private StringBuilder appendPostSeparator() {
if (postString.length() != 0)
postString.append('&');
return postString;
}
}
Java:
@Test
public void test() {
HighscoreSaver s = new HighscoreSaver("http://XXXXXX/save.php");
s.addGetVariable("name", "Peter");
s.addGetVariable("score", "100.000.000.000€");
s.addPostVariable("tname", "Peter");
s.addPostVariable("tscore", "100.000.000.000€");
s.addPostVariable("table", "test");
s.send();
}
PHP:
$name = (String)$_Get["name"];
$score = (String)$_Get["score"];
$tname = (String)$_POST["tname"];
$tscore = (String)$_POST["tscore"];
$checksum = (String)$_POST["checksum"];
$gameName = (String)$_POST["table"];
/*Abfragen ob die Werte 'valid' sind. Habe die Abfragen zum Testen raus genommen. Funktioniert trotzdem nicht.*/
$fp = fopen("_".$gameName.".txt","a+");
fputs($fp,$tname."|".$tscore."\n");
fclose($fp);
Leider bekomme ich keine Fehlermeldung, es tut sich einfach gar nichts.
Wenn ich mich aber vom Netz trenne erscheint (wie erwartet) eine Exception beim Verbinden:
Code:
java.net.UnknownHostException
Ich hoffe ihr könnt mir Helfen.
Viele Grüße