Мне нужно отправить целую базу данных, созданную мной на эмуляторе, на мой сервер. Просто узнал о JSON.массив объектов JSON записывается в PHP, затем в базу данных
Начиная простой, я попробовал этот код:
JSONObject jsonObject = new JSONObject();
try {
jsonObject.put("comment", "OK1");
jsonObject.put("category", "pro1");
String message = jsonObject.toString();
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(message);
wr.flush();
wr.close();
и мой PHP является
$json = file_get_contents('php://input');
$obj = json_decode($json);
$comment = $obj->{'comment'};
$category = $obj->{'category'};
$sql = "INSERT INTO test1 (comment, category) VALUES ('$comment', '$category')";
и я могу поставить объекты в моих таблицах. Теперь я хочу создать массив таким образом, чтобы у меня было несколько объектов (я предполагаю, что это правильный способ сделать это? Так что, если у меня есть несколько собак с именем и возрастом, связанным с ним, я бы поставил их в array, right?)
Я пробовал этот код ниже только с одним объектом в моем массиве и ничего не печатал в моей базе данных. Я не изменил свой PHP-код, потому что не знаю, что бы я изменил.
JSONObject jsonObject = new JSONObject();
JSONArray jsonArray = new JSONArray();
try {
jsonObject.put("comment", "OK1");
jsonObject.put("category", "pro1");
jsonArray.put(jsonObject);
String message = jsonArray.toString();
OutputStreamWriter wr = new OutputStreamWriter(conn.getOutputStream());
wr.write(message);
wr.flush();
wr.close();
Предполагая, что это правильный способ сделать это, помещая объекты в массив, а затем писать их, как я в конечном счете цикл через массив, если у меня есть 2 или 3 объектов для отправки?
Спасибо!
я заменил свой код, что я написал выше для PHP части с вашими-х и ничего не будет размещена в моей базе данных :( – Pam
@Pam Это не весь код, Идея состоит в том, чтобы иметь петлю, а затем делать то, что вы уже делаете внутри этого цикла. Это должно вставить новую строку для каждого объекта. – OptimusCrime