大家好,我正在从 android studio 构建一个登录和注册应用程序,每当我运行该应用程序时,我都没有收到任何错误,但该应用程序没有连接到 PHP 本身,我试图更改 URL 的地址,但每次我更改它,有一个错误,但是每当我使用我的IP和php的地址时,我都没有错误,但是对php的进程和android的进程没有响应,我使用的是正确的地址还是应该更改它?
这是我的代码:
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.EditText;
import android.widget.Toast;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import java.util.HashMap;
import java.util.Map;
public class Login extends AppCompatActivity {
private EditText etNumber, etPassword;
private String phone, password;
private static final String URL = "http://192.168.1.218/login/login.php";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_login);
phone ="";
password = "";
etNumber = findViewById(R.id.username);
etPassword = findViewById(R.id.password);
}
public void backToMenu (View view){
phone = etNumber.getText().toString().trim();
if(!phone.equals("")){
StringRequest stringRequest = new StringRequest(Request.Method.POST, URL, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
if (response.equals("true")) {
finish();
Intent intent = new Intent(Login.this, MainActivity.class);
startActivity(intent);
} else if (response.equals("false")) {
Toast.makeText(Login.this, "Invalid Login ID/Password", Toast.LENGTH_SHORT).show();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(Login.this, error.toString().trim(),Toast.LENGTH_SHORT).show();
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> data = new HashMap<>();
data.put("phone_number", phone);
return data;
}
};
RequestQueue requestQueue = Volley.newRequestQueue(getApplicationContext());
requestQueue.add(stringRequest);
}else {
Toast.makeText(this, "Fields cannot be empty!", Toast.LENGTH_SHORT).show();
}
}
public void switchRegister (View view){
Intent intent = new Intent(this, Register.class);
startActivity(intent);
finish();
}
这是我的 PHP 代码
<?php
if(isset($_POST['phone'])){
require_once "conn.php";
require_once "validate.php";
$phone = $_POST['phone'];
$sql = "select * from users where phone_number= '$phone'";
$result = $conn->query($sql);
if($result->num_rows > 0){
echo "true";
session_start();
$_SESSION['phone_number'] = $row['phone_number'];
header("location: validatepass.php?phone=$phone");
}
else{
echo "false";
}
}
?>