Java 无法在我的Android应用程序中验证登录凭据
我正在创建一个基本的登录和注册android应用程序。我被困在一个地方,我想用DB验证我的用户输入的凭证,并相应地允许用户登录,这是这样一个系统的默认流程。但问题是,即使条目与数据库不匹配,我的应用程序也会将我带到下一个活动 我使用PHP/MySQL进行后端数据库连接 参考文件:- 我希望用户在输入错误的凭据时收到错误消息,从而试图阻止用户进入下一个活动,但在输入错误凭据的情况下,它会进入另一个活动 编辑1:- 这些是我的PHP文件Java 无法在我的Android应用程序中验证登录凭据,java,php,android,mysql,Java,Php,Android,Mysql,我正在创建一个基本的登录和注册android应用程序。我被困在一个地方,我想用DB验证我的用户输入的凭证,并相应地允许用户登录,这是这样一个系统的默认流程。但问题是,即使条目与数据库不匹配,我的应用程序也会将我带到下一个活动 我使用PHP/MySQL进行后端数据库连接 参考文件:- 我希望用户在输入错误的凭据时收到错误消息,从而试图阻止用户进入下一个活动,但在输入错误凭据的情况下,它会进入另一个活动 编辑1:- 这些是我的PHP文件 **db_connect.php :-** &l
**db_connect.php :-**
<?php
$db_name = "ldsandroidapp";
$mysql_username = "root";
$mysql_password = "root@123";
$server_name = "localhost";
$conn = mysqli_connect($server_name, $mysql_username, $mysql_password, $db_name);
if ($conn) {
echo "Connection successfull";
}
else {
echo "Connection unsuccessfull";
}
?>
**login.php :-**
<?php
require "db_connect.php";
$user_name = $_POST["full_name"];
$user_pass = $_POST["password"];
$mysql_qry = "select * from register where full_name ='$user_name' and password ='$user_pass'";
$result = mysqli_query($conn, $mysql_qry);
if(mysqli_num_rows($result) > 0)
{
$row = mysqli_fetch_assoc($result);
$name = $row["full_name"];
$psw = $row["password"];
echo "success";
}
else
{
echo "error";
}
?>
**register.php :-**
<?php
require "db_connect.php";
$user_name = $_POST["full_name"];
$employee_id = $_POST["employee_id"];
$user_pass = $_POST["password"];
$mysql_qry = "insert into register (full_name, employee_id, password) values ('$user_name', '$employee_id', '$user_pass')";
if(mysqli_query($conn, $mysql_qry))
{
echo "done";
}
else
{
echo "error";
}
?>
**db_connect.php:-**
**login.php:-**
你的PHP代码在哪里?你确定你的PHP逻辑是正确的吗?@Dharman-是的,我的PHP逻辑是正确的,因为我尝试创建了一个虚拟HTML表单来检查注册和登录是否正常。我仍然会附上相应的PHP文件以供参考
public class MainActivity extends AppCompatActivity {
EditText et1,et2;
TextView tv_frg_psw;
Button btn,btn_register;
String fullname, password;
String finalResult ;
String HttpURL = "http://mydomainip/folder1/login.php";
Cursor cursor;
@Override
protected void onCreate(final Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et1 = (EditText)findViewById(R.id.eteid);
et2 = (EditText)findViewById(R.id.etpsw);
btn = (Button)findViewById(R.id.btnlogin);
tv_frg_psw = (TextView)findViewById(R.id.tv_frg_psw);
btn_register = (Button)findViewById(R.id.btn_register);
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String full_name=et1.getText().toString();
String password=et2.getText().toString();
String type = "login";
BackgroundWorker backgroundWorker = new BackgroundWorker(MainActivity.this);
backgroundWorker.execute(type, full_name, password);
}
});
btn_register.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent i = new Intent(MainActivity.this,RegistrationActivity.class);
startActivity(i);
}
});
}
public void perform_action(View v)
{
Intent i = new Intent(MainActivity.this,ForgotPasswordActivity.class);
startActivity(i);
}
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
public boolean onOptionsItemSelected(MenuItem item) {
int id = item.getItemId();
switch(id) {
case R.id.item1:
Intent adminlogin = new Intent(MainActivity.this,AdminLogin.class);
startActivity(adminlogin);
//Toast.makeText(getApplicationContext(), "Item 1 Selected", Toast.LENGTH_LONG).show();
return true;
default:
return super.onOptionsItemSelected(item);
}
}
}
**db_connect.php :-**
<?php
$db_name = "ldsandroidapp";
$mysql_username = "root";
$mysql_password = "root@123";
$server_name = "localhost";
$conn = mysqli_connect($server_name, $mysql_username, $mysql_password, $db_name);
if ($conn) {
echo "Connection successfull";
}
else {
echo "Connection unsuccessfull";
}
?>
**login.php :-**
<?php
require "db_connect.php";
$user_name = $_POST["full_name"];
$user_pass = $_POST["password"];
$mysql_qry = "select * from register where full_name ='$user_name' and password ='$user_pass'";
$result = mysqli_query($conn, $mysql_qry);
if(mysqli_num_rows($result) > 0)
{
$row = mysqli_fetch_assoc($result);
$name = $row["full_name"];
$psw = $row["password"];
echo "success";
}
else
{
echo "error";
}
?>
**register.php :-**
<?php
require "db_connect.php";
$user_name = $_POST["full_name"];
$employee_id = $_POST["employee_id"];
$user_pass = $_POST["password"];
$mysql_qry = "insert into register (full_name, employee_id, password) values ('$user_name', '$employee_id', '$user_pass')";
if(mysqli_query($conn, $mysql_qry))
{
echo "done";
}
else
{
echo "error";
}
?>