Bonsoir à tous,
je suis en train d'établir une connexion entre mon application android et ma base de données mysql. ci-dessous mon code source:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55 package com.exemple.test; import java.util.ArrayList; import org.apache.http.NameValuePair; import org.apache.http.message.BasicNameValuePair; import android.view.View; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import android.app.Activity; import android.os.Bundle; public class TestActivity 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("ID_Candidat", un.getText().toString())); postParameters.add(new BasicNameValuePair("MP_candidat", pw.getText().toString())); //String valid = "1"; String response = null; try { response = CustomHttpClient.executeHttpPost("http://10.0.2.2/mesRequetes/verifier.php", postParameters); //Enetr Your remote PHP,ASP, Servlet file link String res=response.toString(); // res = res.trim(); res= res.replaceAll("\\s+",""); //error.setText(res); if(res.equals("1")) error.setText("Correct Username or Password"); else error.setText("Sorry!! Incorrect Username or Password"); } catch (Exception e) { un.setText(e.toString()); }} }); }}et le code php:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95 package com.exemple.test; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.net.URI; import java.util.ArrayList; import org.apache.http.HttpResponse; import org.apache.http.NameValuePair; 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; /** * Get our single instance of our HttpClient object. * * @return an HttpClient object with connection parameters set */ private static HttpClient getHttpClient() { if (mHttpClient == null) { mHttpClient = new DefaultHttpClient(); final HttpParams params = mHttpClient.getParams(); HttpConnectionParams.setConnectionTimeout(params, HTTP_TIMEOUT); HttpConnectionParams.setSoTimeout(params, HTTP_TIMEOUT); ConnManagerParams.setTimeout(params, HTTP_TIMEOUT); } return mHttpClient; } /** * Performs an HTTP Post request to the specified url with the * specified parameters. * * @param url The web address to post the request to * @param postParameters The parameters to send via the request * @return The result of the request * @throws Exception */ public static String executeHttpPost(String url, ArrayList postParameters) throws Exception { BufferedReader in = null; try { HttpClient client = getHttpClient(); HttpPost request = new HttpPost(url); UrlEncodedFormEntity formEntity = new UrlEncodedFormEntity(postParameters); request.setEntity(formEntity); HttpResponse response = client.execute(request); in = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); StringBuffer sb = new StringBuffer(""); String line = ""; String NL = System.getProperty("line.separator"); while ((line = in.readLine()) != null) { sb.append(line + NL); } in.close(); String result = sb.toString(); return result; } finally { if (in != null) { try { in.close(); } catch (IOException e) { e.printStackTrace(); }}}} public static String executeHttpGet(String url) throws Exception { BufferedReader in = null; try { HttpClient client = getHttpClient(); HttpGet request = new HttpGet(); request.setURI(new URI(url)); HttpResponse response = client.execute(request); in = new BufferedReader(new InputStreamReader(response.getEntity().getContent())); StringBuffer sb = new StringBuffer(""); String line = ""; String NL = System.getProperty("line.separator"); while ((line = in.readLine()) != null) { sb.append(line + NL); } in.close(); String result = sb.toString(); return result; } finally { if (in != null) { try { in.close(); } catch (IOException e) { e.printStackTrace(); }}}}}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 < ?php $un=$_POST['ID_Candidat']; $pw=$_POST['MP_candidat']; //connect to the db $user = root; $pswd = ; $db = tmjob_db; $conn = mysql_connect(localhost, 'root', ''); mysql_select_db($db, $conn); //run the query to search for the username and password the match $query = SELECT * FROM candidat WHERE ID_Candidat = $un AND MP_candidat = $pw; $result = mysql_query($query) or die(Unable to verify user because : . mysql_error()); //this is where the actual verification happens if(mysql_num_rows($result) > 0) // ( $un == ajay && $pw == ajay) echo 1; // for correct login response else echo 0; // for incorrect login response ?>
Le problème c'est au nvieau de "id" puisqu'on me souligne les lignes suivantes
Merci de m'aider
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 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);
Partager