Я пытаюсь создать веб-сервис для приложения, поэтому данные хранятся в онлайн-базе данных, которую я имею. В настоящее время я создаю php-документ, и мне любопытно, как я могу POST
array
использовать cURL
в приложении терминала Mac .
Понимаете, приложение отправит массив, состоящий из строк, в веб-службу. Например, что-то вроде этого ["String 1", "String 2", "String 3"]
. Но чтобы проверить, работает ли код для ввода этих значений в базу данных, мне нужно каким-то образом передать эти данные в webservice. До сих пор я использовал приложение Mac Terminal и размещался как этот curl -F "user_id=1" localhost/test/webservice.php"
, но я не знаю, как передать массив.
До сих пор я так:
curl -F "user_id=1" -F "title=Random title 123" -F "num_items=2" -F "items[]=[Item 1, Item 2]" localhost/test/webservice.php
Но я не думаю, что это правильный способ передать массив, потому что я считаю, что код, который у меня есть в моем документе php, верен, но значение, которое хранится в моей базе данных, буквально является массивом слов. Я считаю, что items[]
– правильный способ запустить его, но я не уверен в том, что происходит после =
-sign.
Кто-нибудь знает правильный способ сделать это?
Если это будет правильно, то что-то не так с тем, как я храню данные в моем массиве. Я использую stmt
и ключевое слово bind_param()
следующим образом:
$items = $_POST["items"]; // This is the array $stmt = $this->db->prepare('INSERT INTO items (item_id, user_id, title) VALUES (?, ?, ?)'); $stmt->bind_param('iis', $item_id, $user_id, $items); $stmt->execute(); $stmt->close();
То, что я пытаюсь достичь, в основном, выдает все значения из массива в базу данных с помощью одного оператора insert. Если это неправильно, каков правильный способ сделать это?
Вся помощь приветствуется!
Благодарю.
Сначала убедитесь, что вы хотите сделать -F
(для multipart/form-data
) или -d
(для application/x-www-form-urlencoded
). В любом случае, вот как вы должны передать массив:
-F "items[]=Item 1" -F "items[]=Item 2"
или используя -d
-d "items[]=Item 1" -d "items[]=Item 2"
Ваш сервер получит данные в следующем формате:
[items] => Array ( [0] => Item 1 [1] => Item 2 )