Android, service rest et php

Fermé
safa - 2 juin 2012 à 01:59
Bonsoir,

Voici les codes (deux classes java et un fichier php) que J'ai les écris pour un projet android qui permet d'accéder au base des données php pour vérifier l'authentification d'un client Android sur un localhost avec le service web REST.

mais le problème c'est que toujours le même résultat qui s'affiche "Sorry!! Incorrect Username or Password"

Quelqu'un m'aider à avoir la source d'erreur et le corriger..

Merci d'avance pour votre aide.





package com.example.login2;

import java.io.BufferedReader;

import java.io.InputStreamReader;
import java.net.HttpURLConnection;
import java.net.URL;
import org.apache.http.NameValuePair;
/*
import java.net.URI;
import org.apache.http.HttpResponse;
import java.util.ArrayList;
import java.io.IOException;
import org.apache.http.client.HttpClient;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.conn.params.ConnManagerParams;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.params.HttpConnectionParams;
import org.apache.http.params.HttpParams;
*/
public class CustomHttpClient {
/** The time it takes for our client to timeout */
public static final int HTTP_TIMEOUT = 30 * 1000; // milliseconds

/** Single instance of our HttpClient */

//private static HttpClient mHttpClient;

public static String httpPost(String urlStr, NameValuePair nameValuePair,
NameValuePair nameValuePair2) throws Exception {
URL url = new URL(urlStr);
HttpURLConnection conn =
(HttpURLConnection) url.openConnection();
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
conn.setAllowUserInteraction(false);
conn.setRequestProperty("Content-Type",
"application/x-www-form-urlencoded");
BufferedReader rd = new BufferedReader(
new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line;
while ((line = rd.readLine()) != null) {

sb.append(line);
}
rd.close();

conn.disconnect();
return sb.toString();
}
}








package com.example.login2;

import java.util.ArrayList;

import org.apache.http.NameValuePair;
import org.apache.http.message.BasicNameValuePair;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class login2 extends Activity {
EditText un,pw;
TextView error;
Button ok;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
un=(EditText)findViewById(R.id.et_un);
pw=(EditText)findViewById(R.id.et_pw);
ok=(Button)findViewById(R.id.btn_login);
error=(TextView)findViewById(R.id.tv_error);

ok.setOnClickListener(new View.OnClickListener() {

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>();
postParameters.add(new BasicNameValuePair("username", un.getText().toString()));
postParameters.add(new BasicNameValuePair("password", pw.getText().toString()));
//String valid = "1";
String response = null;
try {
response = CustomHttpClient.httpPost("http://10.0.2.2:8888/login.php", postParameters.get(0), postParameters.get(1));
String res=response.toString();
// res = res.trim();
res= res.replaceAll("\\s+","");
//error.setText(res);

if(res.equals("1"))
error.setText("Correct Username and Password");
else
error.setText("Sorry!! Incorrect Username or Password");
} catch (Exception e) {
un.setText(e.toString());
}

}
});
}
}








<?php
$username=$_POST["username"];
$password=$_POST["password"];

if($username&&$password)
{
mysql_connect("127.0.0.1", "root", "") or die ("couldn't connect to host!");
mysql_select_db("loginsession") or die ("couldn't find db");
$query = mysql_query("SELECT * FROM users WHERE username = '$username'");
$numrows = mysql_num_rows($query);

if($numrows!=0)
{
while ($row = mysql_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if($username==$dbusername&&$password==$dbpassword)
{

echo 1;
}
else
{
echo 0;
}
}
else
echo 0;
}
else
{
echo 0;
}
?>