Всем привет. Задача: отправлять ID заказов из формы и получать ответ по статусам. Однако код не работает (не могу найти в чем ошибка и как исправить) . Вот что говорит проверка синтаксиса: http://prntscr.com/ixxjqu Прошу помощи! Буду крайне признателен! Код: Код (Text): <?php if (!empty($_POST)) { send_the_order ($_POST); } function send_the_order ($post){ $data = array ( 'orders' => array(12345, 12346, 12347), // список id заказов 'api_key' => '123123123', // индивидуальный ключ ); if ($curl = curl_init()) { curl_setopt($curl, CURLOPT_URL, 'http://www.money4leads.org/status/get_is_payed.php'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($curl); curl_close($curl); } Рузультаты { "orders": [ { "orderId": "12345", "status": "отправлен" }, { "orderId": "12346", "status": "не выкуп" }, { "orderId": "12347", "status": "выкуп" } ], "status": true } } ?> --- Добавлено --- Так тоже не работает Код (Text): <?php if (!empty($_POST)) { send_the_order ($_POST); } function send_the_order ($post){ data = array ( 'orders' => $post['orders'],// id заказа 'api_key' => '123123123', // индивидуальный ключ ); if ($curl = curl_init()) { curl_setopt($curl, CURLOPT_URL, 'http://www.money4leads.org/status/get_is_payed.php'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($curl); curl_close($curl); } Рузультаты { "orders": [ { "orderId": "12345", "status": "отправлен" }, { "orderId": "12346", "status": "не выкуп" }, { "orderId": "12347", "status": "выкуп" } ], "status": true } } ?>
Что это за оператор или функция в PHP под названием "Рузультаты", после которых еще идет непойми что? Вы посреди исполняемого кода просто текст вбросили и удивляетесь, почему код не исполняется В комментарии оберните ваши рузультаты, чтоли Перед ними поставьте /*, а после них */. Все, что будет между этими конструкциями, будет игнорироваться и не сломает ваш код.
Эхехе.... Я вот что имел ввиду: PHP: <?php if (!empty($_POST)) { send_the_order ($_POST); } function send_the_order ($post){ data = array ( 'orders' => $post['orders'],// id заказа 'api_key' => '123123123', // индивидуальный ключ ); if ($curl = curl_init()) { curl_setopt($curl, CURLOPT_URL, 'http://www.money4leads.org/status/get_is_payed.php'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($curl); curl_close($curl); } /* Рузультаты { "orders": [ { "orderId": "12345", "status": "отправлен" }, { "orderId": "12346", "status": "не выкуп" }, { "orderId": "12347", "status": "выкуп" } ], "status": true } */ } ?> --- Добавлено --- Вам нужно изучить хотя бы основы PHP, иначе вы далеко не уедете так.
так вопервых написано само слово с ошибокой) дальше я не понимаю что это? PHP: Рузультаты { "orders": [ { "orderId": "12345", "status": "отправлен" }, { "orderId": "12346", "status": "не выкуп" }, { "orderId": "12347", "status": "выкуп" } ], "status": true } } как тебе сказали выше закоментируй его сделай вот так вот PHP: /*Рузультаты { "orders": [ { "orderId": "12345", "status": "отправлен" }, { "orderId": "12346", "status": "не выкуп" }, { "orderId": "12347", "status": "выкуп" } ], "status": true } }*/ --- Добавлено --- + еще если ты ждешь какой нить вывод на экран от это функции send_the_order то так короче я незнаю что твой код делает но вот скопируй он рабочий PHP: if (!empty($_POST)) { $res = send_the_order ($_POST); var_dump($res); } function send_the_order ($post){ data = array ( 'orders' => $post['orders'],// id заказа 'api_key' => '123123123', // индивидуальный ключ ); if ($curl = curl_init()) { curl_setopt($curl, CURLOPT_URL, 'http://www.money4leads.org/status/get_is_payed.php'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($curl); curl_close($curl); } return $result; } --- Добавлено --- я допилил что бы можно было смотреть результат если что то он выводит. по твоей логике понял что в рузультаты должен быть результат вот этот PHP: $result = curl_exec($curl);
@Dron-Boy спасибо! Ругается на строку Код (Text): data = array ( Функционал должен из формы забирать ID заказа и с сервера узнавать его статус "Доставлен, В ожидании и т.п." и выводить результат на экран. Помогите пожалуйста допилить.
Итак, на данный момент код имеет такой вид: Код (Text): <?php if (!empty($_POST)) { $res = send_the_order ($_POST); var_dump($_POST); } function send_the_order ($post){ $data = array ( 'orders' => $post['orders'],// id заказа 'api_key' => '123123', // индивидуальный ключ заменил с целью безопасности ); if ($curl = curl_init()) { curl_setopt($curl, CURLOPT_URL, 'http://www.money4leads.org/status/get_is_payed.php'); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); curl_setopt($curl, CURLOPT_POST, true); curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($data)); $result = curl_exec($curl); curl_close($curl); } return $result; } ?> Данные шлю из формы: Код (Text): <form action="status.php" method="POST"> <div class="row"> <label for="name"><b>ID заказов</b> <br>Пример: 12345, 12346, 12347</label> <input id="orders" name="orders" type="text" class="newpole" required> </div> <div class="line"></div> <div class="row align-center"> <input type="submit" value="ЗАПРОСИТЬ СТАТУС"> </div> </form> На выходе получаю: array(1) { ["orders"]=> string(7) "4192983" }