Tengo un código que envía un xml a otra página, mediante curl.
Desde esa página de destino, se procesa el xml recibido, y según el valor de uno de sus nodos... tengo que devolver a la página inicial un contenido, pero donde se especifique un header status 200 (ok) u otro distinto, por ejemplo, 404, según dicho valor.
El envío del xml lo tengo "bien", pero no consigo generar y leer de vuelta el header correspondiente.
Os pego el código de la página que envía...
Código PHP:
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_URL, "http://xxx.xxx.xxx.xxx/recepcion.php");
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $cuerpoXML);
// "XML" es el inicio del xml para recibirlo como variable en el destino.
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Connection: close'));
$content2=curl_exec($ch);
Código PHP:
if(isset($_POST['XML'])){
//Si el valor de un nodo (por ejemplo "nodo1") es = 1 -> header 200
//Si el valor de un nodo (por ejemplo "nodo1") es = 0 -> header 404
}else{
//Devolver un header de error, por ejemplo 503
}
Version php 5.4.3
Espero haberme explicado bien.. si no, lo intento hacer mejor...
Muchas gracias