我正在製作一個應用程序,並在該應用程序中,我需要發送數據到php服務器和接收數據在php服務器,反之亦然。我無法將數據從android應用程序發送到php服務器?你能告訴我該怎麼做嗎?
這是我發送數據到服務器的代碼。
如何發送數據到php服務器和使用POST和httpurl連接在php服務器接收數據
public class EventServiceHandler
{
String data;
DoSomething d = new DoSomething();
public EventServiceHandler() {
// TODO Auto-generated constructor stub
d.execute();
}
public void getObject()
{
String s = "http://www.example.com/thisisthis.php";
try {
URL url = new URL(s);
HttpURLConnection connection = (HttpURLConnection) url.openConnection();
connection.setDoInput(true);
connection.setDoOutput(true);
connection.setRequestMethod("POST");
connection.setConnectTimeout(100000);
connection.setReadTimeout(100000);
connection.connect();
OutputStreamWriter out = new OutputStreamWriter(connection.getOutputStream());
response=connection.getResponseCode();
String name="sateesh";
String testing=URLEncoder.encode("name", "utf-8")
+ "=" + URLEncoder.encode(name, "utf-8");
out.write(testing);
}
catch (MalformedURLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private class DoSomething extends AsyncTask<Void, Void, Void>
{
@Override
protected Void doInBackground(Void... params)
{
// TODO Auto-generated method stub
getObject();
return null;
}
}
}
這是PHP服務器上的代碼用於在服務器上接收數據。
<?php
if($_POST)
{
$name = urldecode($_POST['name']);
echo $name;
error_log($name,0);
echo " ok";
}
else if(is_null($_POST) OR empty($_POST))
{
error_log("empty or null",0);
echo "in else if";
}
else
{
echo "<br>";
echo "in else";
}
echo "just";
?>
我知道我在接收數據時,我如何確保正在接收的數據怎麼辦。
我是新來的PHP,並從未在android中使用過http類。
在此先感謝。
等待你的答覆。提前致謝。 – Sateesh 2014-10-20 09:26:13