Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problemas al grabar con PHP-cUrls

Estas en el tema de Problemas al grabar con PHP-cUrls en el foro de PHP en Foros del Web. Buenas tardes estimados, recurro a ustedes ya que le he dado varias vueltas a un tema y no he encontrado solución. Esto haciendo una interface ...
  #1 (permalink)  
Antiguo 14/05/2018, 11:54
 
Fecha de Ingreso: julio-2011
Mensajes: 3
Antigüedad: 12 años, 9 meses
Puntos: 0
Problemas al grabar con PHP-cUrls

Buenas tardes estimados, recurro a ustedes ya que le he dado varias vueltas a un tema y no he encontrado solución.

Esto haciendo una interface con service layers de SAP, genero el código el postman, lo cargo en mi código, al momento de enviar el código a grabar, construyo las lineas que se enviaran en un array mediante la función "CURLOPT_POSTFIELDS =>", pero no me graba cuando envío muchas lineas en el array, si le envío 2 o 3 lineas si me graba. El código debe estar bien, lo que envío lo pruebo en el mismo postman y me graba todo ok.

curl_setopt_array
(
$ch2, array
(
CURLOPT_PORT => "el-puerto"
, CURLOPT_URL => "la-url"
, CURLOPT_RETURNTRANSFER => true
, CURLOPT_ENCODING => ""
, CURLOPT_MAXREDIRS => 10
, CURLOPT_TIMEOUT => 30
, CURLOPT_CONNECTTIMEOUT => 60
, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1
, CURLOPT_SSL_VERIFYPEER => 0
, CURLOPT_SSL_VERIFYHOST => FALSE
, CURLOPT_CUSTOMREQUEST => "POST"
, CURLOPT_POST => true
, CURLOPT_POSTFIELDS =>
"{
\"DocDueDate\" :\"$mDocDueDate\"
,\"CardCode\" :\"$mNrocontrato\"
,\"Comments\" :\"Prueba integracion MIOPM.COM\"
,\"DocumentLines\" :
[
{
\"ItemCode\":\"$mItemcode\"
, \"Quantity\" :\"1\"
, \"TaxCode\" :\"$mIva\"
, \"UnitPrice\" :\"1000\"
, \"CostingCode\" :\"$mCodigo_empresa_contable\"
, \"CostingCode3\" :\"$mCodigotiendacontable\"
, \"CostingCode4\" :\"$mEtiqueta\"
, \"COGSCostingCode\" :\"$mCodigo_empresa_contable\"
, \"COGSCostingCode3\" :\"$mCodigotiendacontable\"
, \"COGSCostingCode4\" :\"$mEtiqueta\"
}
,{
\"ItemCode\":\"$mItemcode\"
, \"Quantity\" :\"1\"
, \"TaxCode\" :\"$mIva\"
, \"UnitPrice\" :\"2000\"
, \"CostingCode\" :\"$mCodigo_empresa_contable\"
, \"CostingCode3\" :\"$mCodigotiendacontable\"
, \"CostingCode4\" :\"$mEtiqueta\"
, \"COGSCostingCode\" :\"$mCodigo_empresa_contable\"
, \"COGSCostingCode3\" :\"$mCodigotiendacontable\"
, \"COGSCostingCode4\" :\"$mEtiqueta\"
}
,{
\"ItemCode\":\"$mItemcode\"
, \"Quantity\" :\"1\"
, \"TaxCode\" :\"$mIva\"
, \"UnitPrice\" :\"3000\"
, \"CostingCode\" :\"$mCodigo_empresa_contable\"
, \"CostingCode3\" :\"$mCodigotiendacontable\"
, \"CostingCode4\" :\"$mEtiqueta\"
, \"COGSCostingCode\" :\"$mCodigo_empresa_contable\"
, \"COGSCostingCode3\" :\"$mCodigotiendacontable\"
, \"COGSCostingCode4\" :\"$mEtiqueta\"
}
]
}"
, CURLOPT_HTTPHEADER => $headers
)
);
$cCargaRespuestaOrdenVenta =curl_exec($ch2);
$err = curl_error($ch2);
curl_close($ch2);
if($err)
{
echo "cURL-02 Error #:" . $err;
}else{
echo "</br>".$mDocEntry."...".$mDocNum."...".$mDocDate.".. .".$mDocTime;
}

Saludos y gracias a todos los que me puedan colaborar, como dato adicional les menciono que no me entrega ningún error
  #2 (permalink)  
Antiguo 14/05/2018, 12:32
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 15 años, 11 meses
Puntos: 528
Respuesta: Problemas al grabar con PHP-cUrls

Como sugerencia, utiliza json_encode para agregar los valores, en vez de escapar los caracteres, quizá ahí esté la cuestión.

Por otra parte, revisa si la documentación no menciona nada sobre algún límite en la cantidad de información que te permite transaccionar.
  #3 (permalink)  
Antiguo 14/05/2018, 12:50
 
Fecha de Ingreso: julio-2011
Mensajes: 3
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Problemas al grabar con PHP-cUrls

Gracias por la respuesta amigo....... ya realice lo que usted me sugiere, pero no se solucionó con "encode" y no he encontrado documentación al respecto, Además todo lo referente a restricciones en el procesamiento de la configuración del php.ini tambien lo he revisado.

Quedo a la espera de alguna otra sugerencia.

Slds y gracias

Freddy
  #4 (permalink)  
Antiguo 14/05/2018, 19:04
 
Fecha de Ingreso: julio-2011
Mensajes: 3
Antigüedad: 12 años, 9 meses
Puntos: 0
Respuesta: Problemas al grabar con PHP-cUrls

Estimados el problema se debía a que cUrl tiene una condición que no permite grabar ms de 1024byts por paquete de envío, solo para el metodo POST.

La solución: Agregar en la cabecera:

curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:')):

Ojo con el formato, ya que si tienen que enviar cookie u otra información en la cabecera, deben concatenar.

Slds

Freddy

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:19.