Android:基本用户登录失败
晚上好 我试图创建一个简单的android应用程序,要求用户提供登录信息;其详细信息存储在SQL数据库中 但是,php会显示一个错误通知:未定义变量:用户名和通知:未定义变量:密码Android:基本用户登录失败,android,Android,晚上好 我试图创建一个简单的android应用程序,要求用户提供登录信息;其详细信息存储在SQL数据库中 但是,php会显示一个错误通知:未定义变量:用户名和通知:未定义变量:密码 protected String doInBackground**(String... arg0)** { try{ **String username = (String)arg0[0];** **String password = (String)
protected String doInBackground**(String... arg0)** {
try{
**String username = (String)arg0[0];**
**String password = (String)arg0[1];**
String link="//Removed//";
String data = URLEncoder.encode("username", "UTF-8") + "=" + URLEncoder.encode(username, "UTF-8");
data += "&" + URLEncoder.encode("password", "UTF-8") + "=" + URLEncoder.encode(password, "UTF-8");
URL url = new URL(link);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write( data );
wr.flush();
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line = null;
// Read Server Response
while((line = reader.readLine()) != null)
{
sb.append(line);
break;
}
return sb.toString();
}
catch(Exception e){
return new String("Exception: " + e.getMessage());
}
}
我相信这个错误可以追溯到负责连接数据库的Java类。特别是字符串用户名和密码
protected String doInBackground**(String... arg0)** {
try{
**String username = (String)arg0[0];**
**String password = (String)arg0[1];**
String link="//Removed//";
String data = URLEncoder.encode("username", "UTF-8") + "=" + URLEncoder.encode(username, "UTF-8");
data += "&" + URLEncoder.encode("password", "UTF-8") + "=" + URLEncoder.encode(password, "UTF-8");
URL url = new URL(link);
URLConnection conn = url.openConnection();
conn.setDoOutput(true);
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write( data );
wr.flush();
BufferedReader reader = new BufferedReader(new InputStreamReader(conn.getInputStream()));
StringBuilder sb = new StringBuilder();
String line = null;
// Read Server Response
while((line = reader.readLine()) != null)
{
sb.append(line);
break;
}
return sb.toString();
}
catch(Exception e){
return new String("Exception: " + e.getMessage());
}
}
因为我对android非常陌生,所以我一直在关注
引导以创建系统。我将非常感谢您对此事的任何帮助
多谢各位
PHP代码
<?php
$con=mysqli_connect("//","//","//","//");
if (mysqli_connect_errno($con))
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$username = $_POST['username'];
$password = $_POST['password'];
$result = mysqli_query($con,"SELECT Role FROM my_db WHERE
Username='$username' and Password='$password'");
$row = mysqli_fetch_array($result);
$data = $row[0];
if($data){
echo $data;
}
mysqli_close($con);
?>
Hi,GET参数名称似乎不匹配。您也编写了php端吗?请确保两边使用相同的密钥。顺便说一句,通过URL发送凭据不是一个好主意。嗨,赛昂谢谢你的回复,php代码我使用网站上提供的模板,仅在我的SQL凭据中编辑。你也可以发布php代码吗?