【发布时间】:2019-12-26 03:08:57
【问题描述】:
我想问一些关于我的项目的问题。在我的应用程序中,有一个 EditText 需要用户输入,之后用户必须单击“保存”按钮将输入数据保存到 mysql 数据库。我成功了,说明数据已经保存了。
但问题是,Android 应用程序不显示消息“数据已保存”。这条消息是我用 PHP 写的。
下面是我的代码:
JAVA
private void createTask(final String task_name, final String badgeid) {
StringRequest stringRequest=new StringRequest(Request.Method.POST, URLs.URL_ADD_TASK, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
}
}){
@Override
protected Map<String, String> getParams() {
Map<String,String>parms=new HashMap<String, String>();
parms.put("task_name",task_name);
parms.put("badgeid",badgeid);
return parms;
}
};
RequestQueue requestQueue= Volley.newRequestQueue(getApplicationContext());
requestQueue.add(stringRequest);
}
PHP
<?php
require_once "../config/configPDO.php";
$task_name = $_POST['task_name'];
$badgeid = $_POST['badgeid'];
$sql = "INSERT INTO report (task_name, badgeid, report_date, report_status) VALUES('$task_name','$badgeid', NOW(), 'Pending')";
$query = $conn->prepare($sql);
$query->execute();
if($query){
echo "Data Save!";
}else{
echo "Error!! Not Saved";
}
?>
【问题讨论】:
-
您没有从服务器返回任何内容到应用程序。 API 是 Request 和 Response 的压缩包。根据您的示例,您正在向 API 发送参数,并且 API 没有从服务器返回任何内容。尝试将响应返回给应用程序,而不是回显。在应用程序 onResponse 中,您需要处理来自服务器的消息。在那里您可以显示 toast 消息或您需要显示的任何内容。