PHP - Json POST con PHP

   
Vista:

Json POST con PHP

Publicado por Luis (1 intervención) el 30/09/2016 11:15:27
Buenos días,

Pretendo insertar datos via API en Acumbamail y no consigo que cURL funcione. Ahí va el código.

Gracias!!!


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
 
//API Url
$url = 'https://acumbamail.com/api/1/addSubscriber';
 
//Initiate cURL.
$ch = curl_init($url);
 
//The JSON data.
$jsonData = array(
    'constumer_id' => 'sssa',
    'auth_token' => 'sdsss',
	'list_id' => 'dsafa',
	'merge_fields[email]' => 'prueba@gmail.com'
);
 
//Encode the array into JSON.
$jsonDataEncoded = json_encode($jsonData);
 
 
//Tell cURL that we want to send a POST request.
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
 
//Attach our encoded JSON string to the POST fields.
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonDataEncoded);
 
//Set the content type to application/json
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
 
 
//Execute the request
curl_exec($ch);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de xve

Json POST con PHP

Publicado por xve (6035 intervenciones) el 30/09/2016 21:12:03
Hola Luis, a simple vista, parece que esta bien... te da algún error?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip

Json POST con PHP

Publicado por kip (828 intervenciones) el 01/10/2016 02:10:24
Hola, intenta colocando en esta linea las comillas, asi:

1
'merge_fields["email"]'

Si no te funciona, creo que en lugar de enviar un JSON a la url, debes enviar un string devuelto por la funcion http_build_query de PHP, esta funcion lo que hace es generar una cadena de consulta codificada estilo URL, creo que es lo que necesitas en este caso!

https://secure.php.net/manual/es/function.http-build-query.php

Es decir en lugar de hacer json_encode(), haria algo asi:

1
$valor_a_enviar = http_build_query($jsonData);

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Json POST con PHP

Publicado por Rodolfo (1 intervención) el 03/02/2017 17:00:24
Yo tengo el siguiente codigo y no me arroja ningun error pero lo imprime en el navegador y lo que necesito es pasar el resultado que es un JSON a una variable a php agradezco quien pueda ayudarme

1
2
3
$ch = curl_init($url);
$resultado = curl_exec($ch);
curl_close($ch);

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar