Cita:
Iniciado por pabloe9k
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 >= 0 && $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!