Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problema con variables no definidas

Estas en el tema de Problema con variables no definidas en el foro de PHP en Foros del Web. Buenas buenas! Necesito ayuda con una función en PHP que creé y no está funcionando bien. Les paso el código: Código PHP:      function  evaluacion ...
  #1 (permalink)  
Antiguo 24/04/2015, 13:21
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Pregunta Problema con variables no definidas

Buenas buenas!
Necesito ayuda con una función en PHP que creé y no está funcionando bien.
Les paso el código:

Código PHP:
    function evaluacion($puntaje)
    {
        if(
$puntaje 75)
         {
             
$calificacion 'Muy bueno';
            
$texto 'El proveedor supera los requisitos';
         }
         else if(
$puntaje 50 && $puntaje <= 75)
        {
            
$calificacion 'Bueno';
            
$texto 'El proveedor alcanza los requisitos';
        }
        else if(
$puntaje 25 && $puntaje <= 50)
        {
            
$calificacion 'Regular';
            
$texto 'El proveedor no alcanza los requisitos pero puede aceptarse con una justificación válida';
         }
         else if(
$puntaje >= && $puntaje <= 25)
         {
             
$calificacion 'Malo';
            
$texto 'Se recomienda descartar el proveedor';
         }
         else
         {
             return;
         }

        return 
$calificacion;    
        return 
$texto;
    } 
Y a la función la llamo así:

Código PHP:
echo(evaluacion($ponderadoTotal)) 
En donde "$ponderadoTotal" sale de una consulta SQL que puede o no tener un valor. Lo que sucede es que cuando no tiene valor, la función entiende que el parámetro ("$puntaje" en la función) es "0" y entra en el IF que no corresponde. Se entiende?

Tal vez la lógica esté mal pensada o tal vez haya otra forma de evaluarlo, pero como lo estoy haciendo no funciona. Podrán ayudarme, por favor?

Gracias a todos.
  #2 (permalink)  
Antiguo 24/04/2015, 13:28
Avatar de pabloe9k  
Fecha de Ingreso: julio-2008
Ubicación: Argentina
Mensajes: 190
Antigüedad: 15 años, 9 meses
Puntos: 3
Respuesta: Problema con variables no definidas

Cita:
Iniciado por pabloe9k Ver Mensaje
Buenas buenas!
Necesito ayuda con una función en PHP que creé y no está funcionando bien.
Les paso el código:

Código PHP:
    function evaluacion($puntaje)
    {
        if(
$puntaje 75)
         {
             
$calificacion 'Muy bueno';
            
$texto 'El proveedor supera los requisitos';
         }
         else if(
$puntaje 50 && $puntaje <= 75)
        {
            
$calificacion 'Bueno';
            
$texto 'El proveedor alcanza los requisitos';
        }
        else if(
$puntaje 25 && $puntaje <= 50)
        {
            
$calificacion 'Regular';
            
$texto 'El proveedor no alcanza los requisitos pero puede aceptarse con una justificación válida';
         }
         else if(
$puntaje >= && $puntaje <= 25)
         {
             
$calificacion 'Malo';
            
$texto 'Se recomienda descartar el proveedor';
         }
         else
         {
             return;
         }

        return 
$calificacion;    
        return 
$texto;
    } 
Y a la función la llamo así:

Código PHP:
echo(evaluacion($ponderadoTotal)) 
En donde "$ponderadoTotal" sale de una consulta SQL que puede o no tener un valor. Lo que sucede es que cuando no tiene valor, la función entiende que el parámetro ("$puntaje" en la función) es "0" y entra en el IF que no corresponde. Se entiende?

Tal vez la lógica esté mal pensada o tal vez haya otra forma de evaluarlo, pero como lo estoy haciendo no funciona. Podrán ayudarme, por favor?

Gracias a todos.
Bueno, pude solucionarlo.
Lo que hice fue agregar la siguiente pregunta al principio de la función:

Código PHP:
if(is_null($puntaje))
{
    return;

Saludos!
  #3 (permalink)  
Antiguo 02/05/2015, 14:19
 
Fecha de Ingreso: mayo-2015
Mensajes: 9
Antigüedad: 8 años, 11 meses
Puntos: 1
Respuesta: Problema con variables no definidas

Aunque dices que funciona, creo que tienes un error, y aunque te devuelve la calificacion, no devuelve el texto, ya que no puede haber dos return consecutivos, el segundo nunca se ejecuta.

Saludos

Etiquetas: sql, variables
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 02:41.