Hola a todos, nuevamente por aqui solicitando de su acostumbrado apoyo.
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";
?>
Ya he intentado anteponiendo un IF, por que segun he leido DOMDocument() deberia darme un True o False...
Pero no me funciona... algiuen puede darme algun TIP.
Saludos y desde ya muchas gracias