Para la Versión 0.1 establezco los campos obligatorios.
Para las siguientes versiones imagino pasar los campos no obligatorios, Si existen.
Y ejecutar la consulta sql mas simple posible. y en general mejorar el código usando poo en toda su extensión y retrollamadas
Todo esto surge de la necesidad de simplificar una página de 1000 líneas de código donde comparte espacio los códigos de: buscar, registrar, eliminar, editar, Información.
saludos y espero sus comentarios, gracias.
Código PHP:
class campos_b {/*0*/
public $requeridos;
public $tamano_del_array;
public $suiche_de_tamano_del_array;
private function mostrar(){/*1*/
if(isset($this->requeridos)) {/*2*/
if(count($this->requeridos)>1){/*3*/ echo"Los siguientes campos:";
foreach($this->requeridos as $requerido){/*4*/ echo " $requerido, "; /*4*/} echo "son obligatorios."; /*3*/}
else {/*3*/ echo"El siguiente campo:";
foreach($this->requeridos as $requerido){/*4*/ echo " $requerido, "; /*4*/} echo "es obligatorio."; /*3*/}
/*2*/}
else{/*2*/ $this->requeridos = NULL; /*2*/}
/*1*/}
public function estan_nulos($key,$value){/*1*/
$this->suiche_de_tamano_del_array +=1;
// echo "$key = $value";
if($value == ''){/*2*/ $this->requeridos[] = "$key"; /*2*/}
if($this->tamano_del_array == $this->suiche_de_tamano_del_array){/*2*/ $this->mostrar(); /*2*/}
/*1*/}
/*0*/}
/* La idea es escrivir solo lo siguiente.
$campos_obligatorios["nombre"] = $_POST['nombre'];
$campos_obligatorios["apellido"] = $_POST['apellido'];
$campos_obligatorios["cedula"] = $_POST['cedula'];
Si falta mas de 1 aparecerá: Los siguientes campos x,y,z son obligatorios.
Si falta 1 aparecerá: El siguiente campo x es obligatorio.
Si no falta ninguno aparecerá: estan completos. Lo cual se puede rescribir para activar un siguiente paso o hacer la consulta. Y esta en instancias Obligatorias
*/
$campos_obligatorios["nombre"] = "romel";
$campos_obligatorios["apellido"] = "gomez";
$campos_obligatorios["cedula"] = "";
/* ----------------------------------- Instancias Obligatorias ------------------------------------------------------------------- */
$instancia = new campos_b();
$instancia->tamano_del_array = count($campos_obligatorios);
array_map(array($instancia, 'estan_nulos'), array_keys($campos_obligatorios), array_values($campos_obligatorios));
if($instancia->requeridos==NULL){ echo "estan completos.";}
/* ----------------------------------- Instancias Obligatorias ------------------------------------------------------------------- */