Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Capturar una excepción de una variable que no existe

Estas en el tema de Capturar una excepción de una variable que no existe en el foro de PHP en Foros del Web. Hola Tengo un problemilla, debido a mi casi nulo conocimiento de php, resulta que yo esnvio una variable a traves de html para habrir un ...
  #1 (permalink)  
Antiguo 30/07/2015, 13:40
 
Fecha de Ingreso: julio-2015
Mensajes: 85
Antigüedad: 9 años, 3 meses
Puntos: 4
Capturar una excepción de una variable que no existe

Hola

Tengo un problemilla, debido a mi casi nulo conocimiento de php, resulta que yo esnvio una variable a traves de html para habrir un xml a traves de php con la variable pasada de la siguiente manera:

Código HTML:
Ver original
  1. <a href="xml/index.php?tipo=pulsera">Pulseras</a>

a la hora de recoger esa variable en php funciona perfectamente, pero que pasa si por algun casual no llegase un valor de la variable, pues eso que nos da un fallo ya se que es dificil que eso suceda si tu lo enlazas bien pero mejor curarse en salud y que no pueda fallar por ningun lado. y el problema es cuando intento recuperar la variable y esta no tiene nada, me da error, el codigo lo he puesto en un try pero no me captura esa excepcion.

Mi codigo php es el siguiente:

Código PHP:
Ver original
  1. <?php
  2.         try
  3.         {
  4.             $fichero = simplexml_load_file('trabajos.xml');
  5.             $tipo = $_GET['tipo'];
  6.            
  7.             foreach ($fichero -> trabajo as $pos)
  8.             {
  9.                 if($pos['tipo'] == $tipo)
  10.                 {
  11.                     $titulo=$pos->titulo;
  12.                     $imagen=$pos->imagen;
  13.                    
  14.                     echo "<div><p>Titulo:".$titulo."</p><br/><p>Imagen:".$imagen."</p></div>";
  15.                 }
  16.             }
  17.         }
  18.         catch(Exception $e)
  19.         {
  20.             echo "No hay resultados";
  21.         }
  22.        
  23.     ?>


aunque haya excepcion no me la atrapa y no se a que es. el error que me da es el siguiente: Notice: Undefined index: tipo

alguien sabe a que puede deberse?
  #2 (permalink)  
Antiguo 30/07/2015, 13:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Respuesta: Capturar una excepción de una variable que no existe

Cita:
lo he puesto en un try pero no me captura esa excepcion.
Error tuyo, las excepciones sólo son para OOP, no para variables ni funciones.

Cita:
alguien sabe a que puede deberse?
A que tratas de resolver un problema lógica como si fuera una excepción.

¿Solución?

Usa isset() para verificar la existencia de dicha variable, si existe usas su valor, si no puedes usar cualquier otro.

Código PHP:
Ver original
  1. $tipo = isset($_GET['tipo']) ? $_GET['tipo'] : '';
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 30/07/2015, 14:52
 
Fecha de Ingreso: julio-2015
Mensajes: 85
Antigüedad: 9 años, 3 meses
Puntos: 4
Respuesta: Capturar una excepción de una variable que no existe

Muchas gracias.

Yo pensaba que todos los errores lanzaban excepciones pero ya veo que no.

Es lo que tiene ser un Novato en todo esto.

Etiquetas: html, variable
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 14:06.