Tengo el siguiente problemilla y la verdad que no se porque no me funciona
He creado una funcion que va mirando los elementos de una array y si algún elemento esta vacio ejecuta un switch para saber que valor es el que esta vacio y los va guardando en otro array.
Luego le hago el bucle for a ese ultimo array y obtengo los elementos que estaban vacios.
El problema es que no consigo pasar el array final fuera de la función, para poder operar con el.
Os pongo el codigo y explico:
Código PHP:
$campos_form=array($cat,$prov,$loca,$titulo,$descrip,$cambiarx,$cat_cambio,$nombre,$email); //este es el array del cual busca si alguna de esas variables estan vacias
function comprobar_campos_rellenos($campos) // la funcion para buscar la variables vacías y si es asi dependiendo su posicion añade a $campo_vacio[] el elemento correspondiente
{
for($a=0;$a<count($campos);$a++)
{
if (empty($campos[$a]))
{
switch($a)
{
case 0 : $error1="Categoria anuncio";
break;
case 1 : $error1="Provincia";
break;
case 2 : $error1="Localidad";
break;
case 3 : $error1="Titulo";
break;
case 4 : $error1="Descripción";
break;
case 5 : $error1="Cambiar por";
break;
case 6 : $error1="Categoria cambio";
break;
case 7 : $error1="Nombre";
break;
case 8 : $error1="Email";
break;
}// fin switch
$campo_vacio[] =$error1;
}//fin if
else
{
//return;
}//fin else y del if
} //fin del for
global $campo_vacio;
return true;
}// fin funcion
Código PHP:
if(comprobar_campos_rellenos($campos_form))
{
echo "Te falta de rellenar los siguientes campos:<br/>";
for($x=0;$x<count($campo_vacio);$x++)
{
echo $campo_vacio[$x]."<br/>";
} //fin for
}
else
{
echo "no devuelve nada";
}
Pienso que es una tontería, pero no doy con ello, a ver si alguien me lo puede explicar.
Gacias