Esta herramienta da solución a la validación de la información que se registra en los Formularios, tanto de datos personales o privados como de los datos de información general. En este ejercicio se realiza un ejemplo que abarca ambos objetivos, lo datos de registros generales y lo datos privados o personales.
La disposición en que he colocado los bloques de códigos en una misma página, requiere que se introduzcan los datos en los Formularios siguiendo el orden lógico de la comprobación. De no pasar el test el anterior, no se muestra el siguiente y así sucesivamente.
Estos bloques de scripts forman una herramienta muy útil y versátil, pues su empleo es generalizado en casi todas las aplicaciones que están relacionadas con captar información, datos y enviarlos para procesarlos.
El procedimiento a seguir es como sigue:
1. Introducir los registros en el FRED.
Considerar tipos *#a-zA-Z0-9ÁÉÍÓÚáéíóú y no menos de 4 caracteres para el item y el nombre, 3 para el precio y 1 para cantidad. En el precio, separar pesos y céntimos, con punto. Una vez revisados, enviar los registros, que serán recibidos en esta misma hoja. Dentro del marco en rojo final, aparecerá el botón path, si php aprueba los registros como validos.
2.
Haciendo clic en el botón path, los datos validados previamente se trasfieren al próximo paso, donde se introducirán en un formulario los datos personales del operador. En este nuevo Formulario existen reglas de validación. En el propio Formulario se informa al respecto.
3. Una vez registrados los datos personales se envían al procesador php. Si php los aprueba, aparecerá el botón CONFIRMANDO, el que autoriza al operador a realizar el registro. También puede autorizar el acceso a cualquier otro servicio de interés de un usuario y que la Web exija control de acceso. En este paso concluye el ejercicio.
Bloque de scripts para el Formulario Registro Entrada Datos (FRED)
Los datos se registran en esta hoja y a la vez se reciben en ella para validar su calidad.
<FORM ACTION="validador.php" METHOD="POST">
<table width="428" border="2" bordercolor="#CCCCCC" class="manual">
<tr>
<td width="195" height="23" class="manual">Item del artículo, equivalente al ID o código de identificación </td>
<td width="221"><INPUT TYPE="text" NAME="item"VALUE=""></td>
</tr>
<tr>
<td height="23" class="manual">El nombre del artículo (producto) </td>
<td><INPUT TYPE="text" NAME="nombre"VALUE=""></td>
</tr>
<tr>
<td height="23" class="manual">Cantidad, U</td>
<td><INPUT TYPE="text" NAME="cantidad"VALUE=""></td>
</tr>
<tr>
<td height="23" class="manual">Precio por unidad, USD </td>
<td><INPUT TYPE="text" NAME="precio"VALUE=""></td>
</tr>
<tr>
<td height="28" class="manual">Antes de enviar, compruebe el registro. </td>
<td>
<INPUT TYPE="submit" VALUE="Enviar"></td>
</tr>
</table>
</FORM>
Acá colocaré el FRED
Bloque de Validación Integral (BVI) Uso de if y ereg.
Los datos que son registrados en el Formulario y enviados, son captados en esta misma hoja y procesados por el bloque de validación siguiente:
<table width="471" border="2" bordercolor="#FF0000" class="php14">
<tr><td width="459">
<?php
$normado=".*#a-zA-Z0-9ÁÉÍÓÚáéíóú";//valores normados o autorizados para los registros. incluye el punto, coma, * y #.
$item=$_POST['item'];//valor asignado a la var $campo para comprobar la salida del scripts de validación.
if (!ereg("^[ $normado]{4,}$",$item)) {//si $campo es diferente a $normado. Como mínimo debe incluir 4 caracteres. Se reporta ERROR
echo "No has utilizado los caracteres admitidos en el item <br>";
return 'false';
}else{
echo "Item OK <br>";
}
?>
<?php
$nombre=$_POST['nombre'];//valor que le asignamos a la var $campo para comprobar la salida del script de validación.
if (!ereg("^[ $normado]{4,}$",$nombre)) {//si $campo es diferente a $normado, se reporta ERROR . Como mínimo debe incluir 4 caracteres.
echo "El nombre contiene caracteres no validos <br> ";
return 'false';
}else{
echo "Nombre OK <br>";
}
?>
<?php
$cantidad=$_POST['cantidad'];//valor que le asignamos a la var $campo para comprobar la salida del script de validación.
if (!ereg("^[ $normado]{1,}$",$cantidad)) {//si $campo es diferente a $normado, se reporta ERROR . Como mínimo debe incluir 1 caracter mínimo
echo "El nombre contiene caracteres no validos <br> ";
return 'false';
}else{
echo "Nombre OK <br>";
}
?>
<?php
$precio=$_POST['precio'];//valor que le asignamos a la var $campo para comprobar la salida del script de validación.
if (!ereg("^[ $normado]{3,}$",$precio)) {//si $campo es diferente a $normado, se reporta ERROR . Como mínimo debe incluir 3 caracteres.
echo "El nombre contiene caracteres no validos <br> ";
return 'false';
}else{
echo "Precio OK . Haga clic sobre el botón path para trasladarse a la hoja siguiente hoja de la SESSION. \n";
// el botón de ENVIAR a la siguiente página, por método POST, dentro de la salida TRUE. Una vez que cierre PHP, estaré dentro de etiquetas HTML. Si los datos son correctos, el BVI llegará hasta aquí.
?>
<form action="validador.php" method="POST">
<input type="hidden" name="item" value="<?php echo $_POST['item']; ?> ">
<input type="hidden" name="nombre" value="<?php echo $_POST['nombre']; ?>">
<input type="hidden" name="cantidad" value="<?php echo $_POST['cantidad']; ?>">
<input type="hidden" name="precio" value="<?php echo $_POST['precio']; ?>">
<input type="submit" value="path"></a></form>
<?php //abro nuevamente php para concluir el if.
}//cierro la llave del último else.
?>//cierro el código php.
</td>
</tr>
</table>
Las Reglas de Validación que se han prefijado en el bloque anterior son las que siguen.
Los caracteres que acepta el bloque de validación para comprobar los registros , son los siguientes: ".*#a-zA-Z0-9ÁÉÍÓÚáéíóú".
Describiéndolos:
a) Todos los alfanuméricos, literales, números,
b)
mayúsculas, minúsculas,
c)
acentos, puntos, asterisco, símbolo de número,
No se admiten:
d) menos de 4 caracteres para los registros item y nombre,
e) menos de 1 caracter para el campo cantidad,
f) menos de 3 caracteres para el campo precio, incluyendo el punto.
g) espacios vacíos
!CUIDADO!
al copiar y pegar, en ocasiones se incrustan campos en blanco y el validador los rechaza.
De pasar el test, el procesador nos facilita el botón pasar (path), donde haciendo clic en él, transferiremos los datos registrados y validados a un siguiente paso. En este punto, si no se introducen datos en el FRED que pasen el test del bloque validador, no se muestra lo que sigue. Si todo transcurre en orden, veamos lo que el procesador muestra.
No has utilizado los caracteres admitidos en el item
| |