Como validar campos obrigatórios em um formulário-Process Página

Você constrói a página processo formulário PHP web em etapas, começando com a estrutura básica e, em seguida, adicionando mais validação e características complexas como você vai.

  1. Abra o seu editor de texto e criar um novo arquivo.

  2. Nesse arquivo, coloque o seguinte código:

    ? Lt; php // impedir o acesso, caso não tenham apresentado o form.if (! Isset ($ _ POST [ 'enviar'])) {die (header ( "Location: form.php")) -} session_start () - $ _ SESSION [ 'formAttempt'] = true-if (isset ($ _ SESSION [ 'error'])) {unset ($ _ SESSION [ 'error']) -} $ required = array ( "name", "email", "password1", "password2") - $ _ SESSION [ 'error'] = array ()! - // Verifique fieldsforeach necessária ($ necessária quanto $ requiredField) {if (isset ($ _ POST [$ requiredField]) || $ _POST [$ requiredField] == "") {$ _SESSION [ 'error'] [] = $ requiredField. "É necessária." -}} // Dispositionif final (isset ($ _ SESSION [ 'error']) count ($ _ SESSION [ 'error'])> 0) {die (header ( "Location: form.php")) -} else {unset ($ _ SESSION [ 'formAttempt']) - die (header ( "Location: sucesso .php ")) -}>?
  3. Salve o arquivo como form-process.php na raiz do seu documento.

  4. Carregar o principal form.php arquivo em http: //localhost/form.php no seu navegador web.

  5. Clique em Enviar consulta sem preencher nada no formulário.

    image0.jpg

Se você receber uma página com os campos de texto de cor vermelha, então a validação javascript ainda está disparando. Certifique-se de que você tenha comentado o javascript form.php, e certifique-se a página tiver sido recarregada recentemente no seu browser.

Antes de continuar, olhar para este código, uma vez que serve como base para a sua validação PHP.

A primeira coisa feita no arquivo é ter certeza de que ele está sendo atingido por botão Enviar do formulário:

// Impedir o acesso, caso não tenham apresentado o form.if (isset ($ _ POST [ 'enviar'])!) {Die (header ( "Location: form.php")) -}

Se isso não for o caso, então o browser é redirecionado para form.php.

Em seguida, a sessão é iniciada eo formAttempt variável é definida como true. Lembre-se que esta variável é usado dentro do form.php página para indicar que o usuário veio desta página processo contra recarga ou usando o seu botão Voltar.

Em seguida, todos os erros existentes são unset. Não há necessidade para eles na página de processo, e você precisa verificar novamente tudo novamente. A matriz de erro é iniciado novamente.

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

Em seguida, uma matriz está configurado com os campos obrigatórios. Isso faz com que a adição de campos necessários mais tarde uma tarefa fácil. Basta adicioná-las a essa matriz:

$ Required = array ( "name", "e-mail", "password1", "password2") -

O coração da validação básica campo obrigatório é a próxima, dentro de um para cada loop:

// Verifique fieldsforeach necessária ($ necessária quanto $ requiredField) {if (! Isset ($ _ POST [$ requiredField]) || $ _ POST [$ requiredField] == "") {$ _SESSION [ 'error'] [] = $ campo requerido . " É necessário."-}}

Se o campo não é definido ou é vazio, em seguida, um elemento de erro é adicionado à $ _SESSION [ 'Error'] array.

Finalmente, se o $ _SESSION [ 'Error'] array tem todos os elementos, você precisa redirecionar de volta para o page- forma de outra forma, enviá-los para a página de sucesso.

// Dispositionif final (count ($ _ SESSION [ 'error'])> 0) {die (header ( "Location: form.php")) -} else {unset ($ _ SESSION [ 'formAttempt']) - die (cabeçalho ( "Location: success.php")) -}

menu