Cómo validar campos requeridos en una página de formulario-proceso

Usted construye la página del formulario de procesos web PHP en etapas, comenzando con el marco básico y luego añadir la validación más compleja y características a medida que avanza.

  1. Abra el editor de texto y crear un nuevo archivo.

  2. En ese archivo, coloque el siguiente código:

    ? lt; php // impedir el acceso si no han presentado la form.if (! isset ($ _POST ['submit'])) {die (header ("Location: form.php")) -} session_start () - $ _ SESSION ['formAttempt'] = true-if (isset ($ _ SESSION ['error'])) {unset ($ _ SESSION ['error']) -} $ requerida = array ("Nombre", "e-mail", "password1", "password2") - $ _ SESSION ['error'] = array () - // Compruebe fieldsforeach requerido ($ requerido como $ requiredField) {if (isset ($ _POST [$ requiredField]) || $ _POST [$ requiredField] == "") {$ _SESSION ['error'] [] = $ requiredField. "Se requiere." -}} // Dispositionif final (isset ($ _ SESSION ['error']) count ($ _ SESSION ['error'])> 0) {die (header ("Location: form.php")) -} else {unset ($ _ SESSION ['formAttempt']) - die (header ("Location: éxito .php ")) -}>?
  3. Guarde el archivo como forma process.php en la raíz del documento.

  4. Cargue el principal form.php presentar en http: //localhost/form.php en su navegador web.

  5. Haga clic en Enviar consulta sin llenar nada en el formulario.

    imagen0.jpg

Si recibe una página con los campos de texto de color rojo, a continuación, la validación javascript sigue disparando. Asegúrese de que ha comentado el javascript de form.php, y asegurarse de que la página ha sido recargado recientemente en su navegador.

Antes de continuar, mira este código ya que sirve como base para su validación PHP.

Lo primero que hace en el archivo es para asegurarse de que está siendo golpeado por botón Enviar del formulario:

// impedir el acceso si no han presentado la form.if (isset ($ _POST ['submit'])!) {die (header ("Location: form.php")) -}

Si ese no es el caso, entonces el navegador se redirige de nuevo a form.php.

El siguiente, se pone en marcha y la de la sesión formAttempt variable se establece en true. Recordemos que esta variable se utiliza dentro de la form.php página para indicar que el usuario ha venido de esta página proceso contra carga o usando su botón Atrás.

A continuación, todos los errores existentes son desarmado. No hay necesidad de que en la página de proceso, y es necesario volver a revisar todo de nuevo. La matriz de error se inicializa de nuevo.

if (isset ($ _ SESSION ['error'])) {unset ($ _ SESSION ['error']) -} $ _ SESSION ['error'] = array () -

A continuación, una matriz se constituirá con los campos obligatorios. Esto hace que la adición de campos requeridos más adelante una tarea fácil. Sólo tienes que añadir a esta matriz:

$ requerido = array ("Nombre", "e-mail", "password1", "password2") -

El corazón de la validación básica campo requerido es el siguiente, dentro de una para cada lazo:

// Comprobar fieldsforeach requerido ($ requerido como $ requiredField) {if (! Isset ($ _POST [$ requiredField]) || $ _POST [$ requiredField] == "") {$ _SESSION ['error'] [] = $ campo requerido . " es requerido."-}}

Si el campo no está establecida o está vacío, entonces se añade un elemento de error a la $ _SESSION ['Error'] array.

Finalmente, si el $ _SESSION ['Error'] matriz tiene ningún elemento, es necesario redirigir de nuevo a la forma página- de lo contrario, los envían a la página de éxito.

// dispositionif final (count ($ _ SESSION ['error'])> 0) {die (header ("Location: form.php")) -} else {unset ($ _ SESSION ['formAttempt']) - die (cabecera ("Lugar: Success.php")) -}



» » » » Cómo validar campos requeridos en una página de formulario-proceso