Я получаю сообщение об ошибке при попытке отправить нового пользователя в мою среду тестирования cUrl в php - PullRequest
0 голосов
/ 24 сентября 2019

я новичок и пытаюсь выучить cURL в php, но при попытке отправить нового созданного пользователя в мою среду тестирования я получаю сообщение об ошибке.

Я пробовал отлаживать и искать разные вещи, но не смогнайти что-то конкретное, что было не так.Я также попробовал поискать в Google, но все ответы, которые я нашел, не имели смысла вводить

string(830) "{"status":400,"error":"There was a problem in the JSON you submitted [92677fc5f9526c8878a88c61e3ca5a27]: unexpected characters after the JSON document () at line 1, column 1 [parse.c:618] 
in '--------------------------7c5256387e2a9ed5\r\nContent-Disposition: 
attachment; name=\"name\"\r\n\r\njohn jeff\r\n-------------------------

-7c5256387e2a9ed5\r\nContent-Disposition: attachment; 
name=\"email\"\r\n\r\nhelloyes@hotmail.com\r\n-------------------------

-7c5256387e2a9ed5\r\nContent-Disposition: attachment; name=\"phone\"\r\n\r\n09009090\r\n-------------------------

-7c5256387e2a9ed5\r\nContent-Disposition: attachment; name=\"companies\"\r\n\r\nLandstede\r\n-------------------------

-7c5256387e2a9ed5\r\nContent-Disposition: attachment; name=\"user_id\"\r\n\r\n420\r\n--------------------------
7c5256387e2a9ed5--\r\n"}"
if (isset($_POST['submit'])) {
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, "https://api.intercom.io/users");
    curl_setopt($ch, CURLOPT_POST, 1);
    if (isset($_POST['unsubscribed_from_emails'])) {
        $post = ['name' => $_POST['name'],
            'email' => $_POST['email'],
            'phone' => $_POST['phone'],
            'companies' => $_POST['companies'],
            'user_id' => $_POST['user_id'],
            'unsubscribed_from_emails' => $_POST['unsubscribed_from_emails']
        ];
    } else {
        $post = ['name' => $_POST['name'],
            'email' => $_POST['email'],
            'phone' => $_POST['phone'],
            'companies' => $_POST['companies'],
            'user_id' => $_POST['user_id']
        ];
    }
  //var_dump($post);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $post);  //Post Fields
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    $headers = [
        'Authorization:Bearer <MYKEYYOUCANTSEE>',
        'Accept: application/json',
        'Content-type: application/json',
    ];

    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

    $server_output = curl_exec($ch);

    curl_close($ch);

  //  var_dump($server_output);
}

Я просто хочу, чтобы пользователь был добавлен в среду, но ничего не происходит.Только когда я var_dump'd, чтобы найти проблему, я получил это сообщение об ошибке.

1 Ответ

0 голосов
/ 24 сентября 2019

Вам необходимо json_encode() данные поста $.

curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post));  //Post Fields
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...