I am trying to make a login script for my android application, the script will send my email and password to the PHP server, verify the login and then create a PHP session so that the user stays logged in. This is my code,
HttpPost httppost = new HttpPost("http://server.com/login.php");
// Create a new HttpClient and Post Header
HttpClient httpclient = new DefaultHttpClient();
public String login() {
String userID = "";
try {
// Add your data
List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>(2);
nameValuePairs.add(new BasicNameValuePair("email", "e@e.com"));
nameValuePairs.add(new BasicNameValuePair("password", "admin"));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
// Execute HTTP Post Request
HttpResponse response = httpclient.execute(httppost);
userID = EntityUtils.toString(response.getEntity());
//Log.v("Login response", "" + userID);
} catch (ClientProtocolException e) {
// TODO Auto-generated catch block
} catch (IOException e) {
// TODO Auto-generated catch block
}
return userID;
}
This script successfully sends data to my server and my PHP successfully logs the user on. I have placed “HttpClient httpclient = new DefaultHttpClient();” outside my main login method. This has helped store the session until I call upon another class, then it just resets the session again. So I am wondering how I can alter the code so that “httpclient” is somehow stored so I can keep the session and stay logged into my server. Thank you!
Android Http get Session Cookie
Get the cookie session ID and use that cookie in the next requests to the server.