He buscado por internet pero no he encontrado lo que busco.
Me gustaría poner en común mis ideas para poder aclararme ya que tengo varias dudas de cómo implementarlo.
La estructura sería la siguiente:
Código:
formulario -> proceso -> resultado (que podría ser el mismo formulario)
Hasta ahora, yo devolvía un único valor del
proceso con variables de sesión. Lo leía y mostraba el mensaje correspondiente.
Esto tiene el claro inconveniente de no poder listar más de un error. Esto es una funcionalidad que quiero implementar.
Tengo una clase CForm y una clase CFormField con los siguientes campos: (no pongo los métodos para no hacer el post muy extenso)
Código PHP:
abstract class CForm
{
// atributos
private $mode;
private $name;
private $method;
private $enctype;
private $backup;
private $validations; // validaciones globales (que afecten a mas de un campo)
private $errors; // array de errores
private $fields;
}
class CFormField
{
// atributos
private $name;
private $value;
private $label;
private $default;
private $validations; // array de validaciones
private $maxlength;
private $errors; // array de errores
}
Uno de los quebraderos de cabeza que tuve (y tengo) es que hay validaciones que afectan a más de un campo (ej: password y su confirmación) es por eso que he puesto un campo
validations en la clase CForm a parte de las validaciones de cada campo.
Otro quebradero de cabeza es dónde instanciar los mensajes de error. Ahora mismo, lo hago en la clase CForm pero me pregunto si no sería mejor devolver unos códigos de error e instanciar los mensajes fuera de la clase.
En definitiva, tengo muchas dudas y agradecería cualquier crítica o consejo.