使用来自Android

时间:2019-03-05 03:40:40

标签: php android mysql android-volley

我的Android应用程序中有一个ArrayList(),其中包含书名。我正在使用android Volley库来处理服务器请求。我想将所有这些书添加到服务器上数据库中的BookList(table)中。我想使用单个服务器请求来执行此操作,即使用单个php文件。如何编写此php代码,以便使用循环将所有这些值插入表中?一些代码会很有帮助

1 个答案:

答案 0 :(得分:0)

在评论的帮助下找到了答案。 首先,我从arrayLists创建了JSONArrays。然后我通过Android Volley将它们发布到php。

私有地图参数;

    JSONArray bookNamesJSON = new JSONArray(Arrays.asList(bookNames));
    JSONArray bookAuthorsJSON = new JSONArray(Arrays.asList(bookAuthors));
    JSONArray subjectsJSON = new JSONArray(Arrays.asList(subjects));


    params = new HashMap<>();
    params.put("candidateId", id + "");
    params.put("bookName",bookNamesJSON.toString());
    params.put("authorName",bookAuthorsJSON.toString());
    params.put("subjectName",subjectsJSON.toString());
    params.put("reqDate",date);

然后在php中,我必须这样做:

$candidateId=$_POST["candidateId"];
$reqDate=$_POST["reqDate"];
$subjectName = json_decode($_POST["subjectName"])[0];
$bookName = json_decode($_POST["bookName"])[0];
$authorName = json_decode($_POST["authorName"])[0];


$response = array();
foreach ($subjectName as $i => $subject) 
{
    $stmt = $conn->prepare("INSERT INTO BookRequisition VALUES (?,?,?,?,?);");
    $stmt->bind_param("dssss", $candidateId, $subject, $bookName[$i], $authorName[$i], $reqDate);
    $stmt->execute();
}


$response["success"] = true;



echo json_encode($response);

希望这对某人有帮助。