Php 使用volley库登录可以在emulator或localhost上工作,但不能在在线服务器上工作
我只是一个登录到另一个活动,代码工作正常时模拟器。要使其在线登录,代码总是返回失败消息。而用户名和密码是正确的 MainActivity.javaPhp 使用volley库登录可以在emulator或localhost上工作,但不能在在线服务器上工作,php,android,Php,Android,我只是一个登录到另一个活动,代码工作正常时模拟器。要使其在线登录,代码总是返回失败消息。而用户名和密码是正确的 MainActivity.java public class MainActivity extends AppCompatActivity { //Defining views private EditText editTextEmail; private EditText editTextPassword; private Button buttonLogin; private b
public class MainActivity extends AppCompatActivity {
//Defining views
private EditText editTextEmail;
private EditText editTextPassword;
private Button buttonLogin;
private boolean loggedIn = false;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
editTextEmail = (EditText) findViewById(R.id.editTextEmail);
editTextPassword = (EditText) findViewById(R.id.editTextPassword);
buttonLogin = (Button) findViewById(R.id.buttonLogin);
buttonLogin.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Toast.makeText(MainActivity.this,"hello log me",Toast.LENGTH_SHORT).show();
login();
}
});
}
@Override
protected void onResume() {
super.onResume();
//In onresume fetching value from sharedpreference
SharedPreferences sharedPreferences = getSharedPreferences(Config.SHARED_PREF_NAME,Context.MODE_PRIVATE);
//Fetching the boolean value form sharedpreferences
loggedIn = sharedPreferences.getBoolean(Config.LOGGEDIN_SHARED_PREF, false);
//If we will get true
if(loggedIn){
//We will start the Profile Activity
Intent intent = new Intent(MainActivity.this, ProfileActivity.class);
startActivity(intent);
}
}
private void login(){
//Getting values from edit texts
final String email = editTextEmail.getText().toString().trim();
final String password = editTextPassword.getText().toString().trim();
Toast.makeText(MainActivity.this,email,Toast.LENGTH_SHORT).show();
Toast.makeText(MainActivity.this,password,Toast.LENGTH_SHORT).show();
//Creating a string request
StringRequest stringRequest = new StringRequest(Request.Method.POST, Config.LOGIN_URL,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
// If we are getting success from server
if(response.trim().equals("success")){
Intent intent = new Intent(MainActivity.this, ProfileActivity.class);
startActivity(intent);
}else{
Toast.makeText(MainActivity.this,response,Toast.LENGTH_SHORT).show();
Log.d("Else Error",response.toString());
}
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
//You can handle error here if you want
Toast.makeText(MainActivity.this, "hi there is "+error.toString(), Toast.LENGTH_LONG).show();
Log.d("Hello",error.toString());
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String,String> params = new HashMap<>();
//Adding parameters to request
params.put(Config.KEY_EMAIL, email);
Log.d("Email :",email);
params.put(Config.KEY_PASSWORD, password);
Log.d("PASSWORD :",password);
//returning parameter
return params;
}
};
//Adding the string request to the queue
RequestQueue requestQueue = Volley.newRequestQueue(this);
requestQueue.add(stringRequest);
}
}
login.php
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = "naaz"; //$_POST['username'];
$password = "1234"; //$_POST['password'];
require_once('dbConnect.php');
$sql ="SELECT * FROM volley WHERE username='$username' AND password='$password'";
$result = mysqli_query($con,$sql);
$check = mysqli_fetch_array($result);
if(isset($check)){
echo 'success';
}else{
echo 'failure';
}
}
?>
当登录时,代码可以正常工作http://10.0.2.2/android/login.php"; 但当登录时_URL=“”;
它总是返回失败消息 尝试其他网络托管服务,我建议检查web服务。显示错误消息先生我将在web服务器上检查什么??请调试。使用
邮递员
。我不是SIR08-30 12:34:32.890 2779-2779/com.example.user.volleyuse D/Else错误:点击按钮时失败
<?php
if($_SERVER['REQUEST_METHOD']=='POST'){
$username = "naaz"; //$_POST['username'];
$password = "1234"; //$_POST['password'];
require_once('dbConnect.php');
$sql ="SELECT * FROM volley WHERE username='$username' AND password='$password'";
$result = mysqli_query($con,$sql);
$check = mysqli_fetch_array($result);
if(isset($check)){
echo 'success';
}else{
echo 'failure';
}
}
?>