Estoy en el desarrollo de un proyectito, pero me he atorado con una gran duda...
Estoy leyendo archivos XML desde PHP, pero en algunas ocasiones por causas ajenas a mi, el servidor de la empresa que me proporciona los XML, no esta disponible... y entonces cuando quiero mostrar los valores que jalo desde ahi me muestra un error como este:
"Warning: DOMDocument::load(http://www.e-travelsolution.com.mx/x...nlya=1&onlyc=1) [domdocument.load]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error. in C:\xampp\htdocs\newcun\test.php on line 5"
El error ahorita fue provocado, poniendo mal una de las claves.
Pero bueno, lo que deseo es como hacer que no me muestre ese error y mejor en su caso algun mensaje como "Ahora no esta disponible, intente mas tarde".
Asi esta mi codigo:
Código PHP:
<?php
$doc = new DOMDocument();
$fila= 344;
$doc->load("http://www.e-travelsolution.com.mx/xml/xmlservice1-2.asmx/getHotels?asoc=xxxx&lang=ESP&text=1&order=&curr=PE&arrive=&depart=&nights=&hotel=$fila&destid=&ma=&new=&cityiD=&catid=&&search=&zoneid=&onlya=1&onlyc=1");
$hotelesetravel = $doc->getElementsByTagName( "Hotel" );
//recorrer el contenido del nodo Hotel
foreach( $hotelesetravel as $hotelet )
{
$clave_hoteles = $hotelet->getElementsByTagName( "KH" );
$clave_hotel = $clave_hoteles->item(0)->nodeValue;
$tarifas = $hotelet->getElementsByTagName( "LR" );
$tarifa = $tarifas->item(0)->nodeValue;
$promociones = $hotelet->getElementsByTagName( "IP" );
$promocion = $promociones->item(0)->nodeValue;
$promocionesultimomin = $hotelet->getElementsByTagName( "IL" );
$promocionultimomin = $promocionesultimomin->item(0)->nodeValue;
$nochesgratis = $hotelet->getElementsByTagName( "IN" );
$nochegratis = $nochesgratis->item(0)->nodeValue;
//redondeo de precios:
$supertarifa = round($tarifa,2);
}
echo "$supertarifa";
?>
Pero no me funciona... algiuen puede darme algun TIP.
Saludos y desde ya muchas gracias