Java 我的php代码用于连接android数据库

Java 我的php代码用于连接android数据库,java,php,android,mysql,database,Java,Php,Android,Mysql,Database,我试图将我的android应用程序与我用于网站的数据库连接起来,但不知何故它不想连接 这是我用于连接的java代码 我添加了安卓清单 这是我的php代码 我相信我的java代码是正确的,但我不确定如果这一行出现问题,我的php该怎么办 if ($Email == $row ['Email'] and $Password == $dbPassword) { 问题出在哪里。您已经验证了密码,它返回一个boolan,所以应该是 if ($Email == $row ['Email']

我试图将我的android应用程序与我用于网站的数据库连接起来,但不知何故它不想连接

这是我用于连接的java代码

我添加了安卓清单
这是我的php代码





我相信我的java代码是正确的,但我不确定如果这一行出现问题,我的php该怎么办

if ($Email == $row ['Email'] and $Password == $dbPassword) {
问题出在哪里。您已经验证了密码,它返回一个boolan,所以应该是

if ($Email == $row ['Email'] and $Password) {
您不需要重新检查$Email==$row['Email'],因为您已经查询过了

因此,您可以将代码缩减为:

if (mysqli_num_rows($res)>0) {
   $dbPassword = $row['Password'];

   if (PASSWORD_VERIFY($Password, $dbPassword)) {
     $id = $row['id'];
     $_SESSION['id'] = $id;
     exit();

   } else {
   //...
这条线

if ($Email == $row ['Email'] and $Password == $dbPassword) {
问题出在哪里。您已经验证了密码,它返回一个boolan,所以应该是

if ($Email == $row ['Email'] and $Password) {
您不需要重新检查$Email==$row['Email'],因为您已经查询过了

因此,您可以将代码缩减为:

if (mysqli_num_rows($res)>0) {
   $dbPassword = $row['Password'];

   if (PASSWORD_VERIFY($Password, $dbPassword)) {
     $id = $row['id'];
     $_SESSION['id'] = $id;
     exit();

   } else {
   //...

和$Password==$dbPassword
错误。您已经验证了密码,返回的是boolan,因此应该是
和$password
。最好将返回的
password\u verify()
重命名为smth,如
$passwordverify
,以减少混淆。。。您不需要重新检查
$Email==$row['Email']
,因为您已经查询过了。旁注:您可以接受sql注入(因为您在查询中直接使用输入)!使用事先准备好的语句!此外,您还应该在成功时返回一些有意义的内容(可能是json
{“success”:true}
,并使用authtoken重新连接?),最好在失败时更改http状态头OK im lost,因为我对此非常陌生,所以我应该删除==$dbpassword并在password中更改$password\u verify为$passwordVerified并删除=$row['Email]…我不知道最后一条评论作为我的第一个android项目,我该怎么办关于最后一条评论:google“Sql注入”和read&use!此
和$Password==$dbPassword
错误。您已经验证了密码,返回的是boolan,因此应该是
和$password
。最好将返回的
password\u verify()
重命名为smth,如
$passwordverify
,以减少混淆。。。您不需要重新检查
$Email==$row['Email']
,因为您已经查询过了。旁注:您可以接受sql注入(因为您在查询中直接使用输入)!使用事先准备好的语句!此外,您还应该在成功时返回一些有意义的内容(可能是json
{“success”:true}
,并使用authtoken重新连接?),最好在失败时更改http状态头OK im lost,因为我对此非常陌生,所以我应该删除==$dbpassword并在password中更改$password\u verify为$passwordVerified并删除=$row['Email]…我不知道最后一条评论作为我的第一个android项目,我该怎么办关于最后一条评论:google“Sql注入”和read&use!但是它不会显示echo,这意味着它没有连接“不会显示echo”。登录成功后,你不会显示任何内容,只会显示“错误的电子邮件或密码”失败时,它不会为错误的电子邮件或密码显示echo它只显示登录状态它不会为错误的密码或电子邮件从php中回显任何内容它只显示来自android代码的登录状态经过良好的睡眠后,我发现安卓代码中的问题非常感谢您的帮助和sql注入说明它仍然不会显示echo这意味着它没有连接“不会显示回音”登录成功后,您不会显示任何内容,只会显示“错误的电子邮件或密码”失败时,它不会显示错误的电子邮件或密码的回显,只显示登录状态。它不会回显php中错误的密码或电子邮件的任何内容。它只显示android代码的登录状态。经过良好的睡眠后,我发现安卓代码中的问题非常感谢您的帮助和sql注入说明
if ($Email == $row ['Email'] and $Password) {
if (mysqli_num_rows($res)>0) {
   $dbPassword = $row['Password'];

   if (PASSWORD_VERIFY($Password, $dbPassword)) {
     $id = $row['id'];
     $_SESSION['id'] = $id;
     exit();

   } else {
   //...