我一直在试图让一个登录系统,我在Android Studio中应用程序,我不断收到此错误JSONException串不能转换成JSONArray
org.json.JSONException:类型的java.lang价值连接.String 无法转换为JSONArray
无法以任何方式修复它,我希望你能发现它并帮助我。 这里是登录活动,我相信这个问题是(如果需要的话我可以提供更多的代码)
{StringRequest stringRequest = new StringRequest(Request.Method.POST, login_url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
try
{
JSONArray jsonArray = new JSONArray(response);
JSONObject jsonObject = jsonArray.getJSONObject(0);
String code = jsonObject.getString("code");
if(code.equals("login_failed"))
{
builder.setTitle("Login Error...");
displayAlert(jsonObject.getString("message"));
}
else
{
Intent intent = new Intent(LoginActivity.this,TestActivity.class);
Bundle bundle = new Bundle();
bundle.putString("email",jsonObject.getString(("email")));
intent.putExtras(bundle);
startActivity(intent);
}
}
catch (JSONException e)
{
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error)
{
Toast.makeText(LoginActivity.this,"Error",Toast.LENGTH_LONG).show();
error.printStackTrace();
}
})
{
@Override
protected Map<String, String> getParams() throws AuthFailureError
{
Map<String,String> params = new HashMap<String, String>();
params.put("email",email);
params.put("password",password);
return params;
}
};
MySingleton.getmInstance(LoginActivity.this).addToRequestQue(stringRequest);
}
这里是PHP代码的一部分:
<?php
require "connection.php";
$email = $_POST["email"];
$password = $_POST["password"];
$sql = "select email,password from user_info where email like '".$email."' and password like '".$password."';";
$result = mysqli_query($connection,$sql);
$response = array();
if(mysqli_num_rows($result)>0)
{
$row = mysqli_fetch_row($result);
$email = $row[0];
$password = $row[1];
$code = "login_success";
array_push($response,array("code"=>$code,"email"=>$email,"password"=>$password));
echo json_encode($response);
}
else
{
$code = "login_failed";
$message = "User not found...";
array_push($response,array("code"=>$code,"message"=>$message));
echo json_encode($response);
}
mysqli_close($connection);
?>
干杯伴侣,它解决了由转换阵列成JSON字符串。谢谢 –