Как проверить учетные данные пользователя для входа в android с помощью PHP, MySql с помощью json

Я новичок в разработке Android. Я хочу выполнить проверку входа, используя php mysql и json.

Я только забочусь о части PHP, MySql и json.

Если пользователь вводит имя пользователя и пароль в приложении Android, тогда ему нужно проверить таблицу пользователей с помощью PHP и Mysql, и ему нужно отправить только код состояния, например 1 или 0, с помощью json.

Если имя пользователя и пароль совпадают, то статус = 1 необходимо отправить в кодировку приложений Android, иначе 0.

Процесс проверки состояния должен выполняться в части кодирования Android.

Если status = 1, и мне нужно перенаправить в другое окно в приложении Android.

Я видел много рубок, но ничего не помогло.

Поэтому, пожалуйста, любезно помогите мне, как отправить статус с PHP на приложение Android и как получить этот статус и проверить в android .

Solutions Collecting From Web of "Как проверить учетные данные пользователя для входа в android с помощью PHP, MySql с помощью json"

Я сделал этот код для своего проекта. и он отлично работает. Попробуйте.

Login2.php

<?php $un=$_POST['username']; $pw=$_POST['password']; //connect to the db $host="localhost"; // Host name $user="root"; // Mysql username $pswd=""; // Mysql password $db="database_name"; // Database name $tbl_name="user_info"; // Table name $conn = mysql_connect($host, $user, $pswd); mysql_select_db($db, $conn); //run the query to search for the username and password the match //$query = "SELECT * FROM $tbl_name WHERE first_name = '$un' AND password = '$pw'"; $query = "SELECT emp_id FROM $tbl_name WHERE first_name = '$un' AND password = '$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) echo mysql_result($result,0); // for correct login response else echo 0; // for incorrect login response ?> 

Java-код для Android login.java

возьмите два edittext и кнопку и на кнопку нажмите поставить этот код. delete saveperference method, вы не хотите сохранять имя пользователя, emp_id для всего приложения.

  @Override public void onClick(View v) { // TODO Auto-generated method stub ArrayList<NameValuePair> postParameters = new ArrayList<NameValuePair>(); postParameters.add(new BasicNameValuePair("username", username .getText().toString())); postParameters.add(new BasicNameValuePair("password", password .getText().toString())); // String valid = "1"; String response = null; try { // "http://10.0.2.2//Mobile/login2.php" response = CustomHttpClient .executeHttpPost( "http://10.0.2.2//Mobile/login2.php", postParameters); // now in result you will have the response from php file either 0 or 1. result = response.toString(); // res = res.trim(); result = result.replaceAll("\\s+", ""); // error.setText(res); if (!result.equals("0")) { SavePreferences("name", "pass", "emp_id", username .getText().toString(), password.getText() .toString()); Intent in = new Intent(Login.this, MainScreen.class); // LoadPreferences(); error.setText(""); startActivity(in); } else error.setText("Incorrect Username or Password"); } catch (Exception e) { // un.setText(e.toString()); } } 

CustumHttpClient.java

 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<NameValuePair> 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(); } } } } /** * Performs an HTTP GET request to the specified url. * * @param url The web address to post the request to * @return The result of the request * @throws Exception */ 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(); } } } } } 

Ваш клиент android должен сделать Http-сообщение для вашего PHP-скрипта, который возвращает код состояния. Ваш скрипт видит этот запрос как любые другие запросы. Клиент получает результат от сервера и вычисляет его.

просто следуйте этому кодексу, я думаю, что его работа прекрасна …

 $email = isset($_REQUEST['email'])?urldecode($_REQUEST['email']):""; $passwd= isset($_REQUEST['passwd'])?urldecode($_REQUEST['passwd']):""; if($email==""||$passwd=="" ) { $return_data['status'] = 0; } else { $user_info="select id from table name WHERE email=$emailAND passwd=$passwd"; if($user_info) { $return_data['status'] = 1; } else { $return_data['status'] = 0; } } echo json_encode($return_data);