РЕДАКТИРОВАТЬ: это то, что показано в журналах моего сайта xx.xx.xxx.xx - - [27 / Jan / 2012: 17: 42: 24 -0500] "POST /dir/addData2.php HTTP / 1.1"200 - www.mywebsites.com "-" "Java / 1.7.0" "-"
Я размещаю свой веб-сайт с номерами 1 и 1, и мне нужна страница blank.php
, которая должна принимать запрос POST изагрузить его в мою базу данных.Я думаю, что отправляю свой POST правильно, и что почему-то я не обращаюсь с ним должным образом на моем веб-сайте.Потому что ничего не вставляется в мою базу данных.Ответ имеет длину содержимого 0, но даже если я отправлю заголовок с длиной строки, он не изменится.Другой вариант заключается в том, что хост не позволяет мне делать удаленные почтовые запросы (все еще ожидая ответа).
Я отправляю запрос на публикацию из приложения Java следующим образом:
URL url = new URL("www.mywebsite.com/blank.php");
HttpURLConnection request = (HttpURLConnection)url.openConnection();
request.setRequestProperty("Content-type","application/x-www-form-urlencoded");
request.setRequestMethod("POST");
OutputStreamWriter post = new OutputStreamWriter(request.getOutputStream());
String data = URLEncoder.encode("account", "UTF-8") + "=" + URLEncoder.encode(message[0], "UTF-8");
data += "&" + URLEncoder.encode("message", "UTF-8") + "=" + URLEncoder.encode(message[2], "UTF-8");
data += "&" + URLEncoder.encode("type", "UTF-8") + "=" + URLEncoder.encode(message[0], "UTF-8");
post.write(data);
post.flush();
/*
/ String example
/account=103&message=Feller+1391.88+0&type=103
*/
Ответ от сервера:
null=[HTTP/1.1 200 OK]
Date=[Fri, 27 Jan 2012 21:59:10 GMT]
Content-Length=[0]
Keep-Alive=[timeout=2, max=200]
Connection=[Keep-Alive]
Content-Type=[text/html]
Server=[Apache]
X-Powered-By=[PHP/5.2.17]
Моя веб-страница имеет этот базовый код PHP(прямо сейчас, улучшу / проверю вещи позже)
$link = mysql_connect($hostname, $username, $password);
$db_selected = mysql_select_db($database, $link);
$query = "INSERT INTO newData(account, message, type) VALUES('$_POST[account]', '$_POST[message]', '$_POST[type]')";
mysql_query($query) || die();
Я хочу отметить, что у меня нет частного сервера, и я, вероятно, буду использовать http://hc.apache.org/httpcomponents-core-ga/examples.html позже.Сейчас я просто хочу отправить строку из моего Java-приложения, получить ее с помощью PHP и вставить в базу данных MySQL.