PHP无法正常工作

时间:2016-04-02 17:49:47

标签: php android

我一直关注Android教程,它涉及将Android应用程序链接到您的数据库。除了登录部分之外,android位工作正常,我认为这是由PHP脚本中的问题引起的。这是PHP代码:

<?PHP
include_once("conn.php");
if (isset($_POST['txtUsername']) && isset($_POST['txtPassword']))
{
    $username = $_POST['txtUsername'];
    $password = $_POST['txtPassword'];

    $query = "SELECT username, password FROM tbl_client " .
        " WHERE username = '$username' AND password = '$password'";

    $result = mysqli_query($conn, $query);

    if ($result->num_rows > 0)
    {

        if (isset($_POST['mobile']) && $_POST['mobile'] == "android")
        {
            echo "success";
            exit;
        }
        echo "login successful";
    } //header("location: index.php"); //replace login.php with your url
    else
    {
        echo "Login Failed <br/>";
    }
}

Android代码位于

之下
@Override
    public void processFinish(String result) {
        if (result.equals("success")){
            Intent intent=new Intent(this,Homepage.class);
            startActivity(intent);
        }
        else
        {
            Toast.makeText(Login.this,"Login Unsuccessful", Toast.LENGTH_SHORT).show();
        }

}

使用isset时,成功位永远不会回显,而是直接跳转到登录成功。我需要这一点来回应,以便我的Android应用程序能够正确登录。

2 个答案:

答案 0 :(得分:1)

if(isset($_POST['mobile']) && $_POST['mobile'] == "android")
{ 
     echo "success";
     exit; 
  } 

isset($_POST['mobile']) && $_POST['mobile'] 将其更改为此,以便您可以了解错误是否与参数

有关
if(isset($_POST['mobile']) 
    { 
         if(($_POST['mobile'] == "android"))
        {
        echo "success";
         exit; 
          }
      }
     else
        { echo "mobile parameter is not set";

答案 1 :(得分:0)

你确定mobile真的是一个POST参数吗?因为如果您通过Android应用程序调用url:http://www.yoursite.xyz/login.php?mobile=android,那么它是一个GET参数,您可以在$ _GET超全局中找到它。