Validando data em formulário
Publicado por Fábio Berbert de Paula 15/08/2003
[ Hits: 14.611 ]
Homepage: https://www.instagram.com/alexabolada/
Script que contém a função validar(), usada para verificar se uma data é válida ou não. Por exemplo, se o usuário informar 31/02, o programa irá acusar que a data não é válida.
<? /* validar_data.php Script que contém a função validar(), usada para verificar se uma data é válida ou não. Por exemplo, se o usuário informar 31/02, o programa irá acusar que a data não é válida. Programado por: Fábio Berbert de Paula <fabio@vivaolinux.com.br> Rio de Janeiro, 15 de Agosto de 2003 */ ?> <html> <body> <form> <? // construindo o select do dia echo "<select name=\"dia\">\n"; for ($i = 1; $i <= 31; $i++) { $i = sprintf("%02d", $i); // preencher com zero À esquerda echo "\t<option value=$i>$i</option>\n"; } echo "</select>"; // construindo o select do mês echo "<select name=\"mes\">\n"; for ($i = 1; $i <= 12; $i++) { $i = sprintf("%02d", $i); // preencher com zero À esquerda echo "\t<option value=$i>$i</option>\n"; } echo "</select>"; // construindo o select do ano echo "<select name=\"ano\">\n"; for ($i = 2003; $i <= 2010; $i++) echo "\t<option value=$i>$i</option>\n"; echo "</select>"; ?> <input type=submit value="OK"> <br><br> <? if ($dia) { // significa que o formulário foi submetido // vamos validar a data if (!validar($dia, $mes, $ano)) echo "Resultado: <font color=red>data inválida!</font><br>"; else echo "Resultado: data OK!<br>"; } // função usada para validar o ano function validar($dia , $mes, $ano) { if ( (($ano % 4) == 0) && ($mes == 2) && ($dia > 29) ) // se o mês for fevereiro e o ano for bissexto, dia não pode // ser maior que 29 return 0; else if ( (($ano % 4) > 0) && ($mes == 2) && ($dia > 28) ) // se o mês for fevereiro e o ano não for bissexto, dia não pode // ser maior que 28 return 0; else if( (($mes == 4) || ($mes == 6) || ($mes == 9) || ($mes == 11) ) && ($dia == 31)) // se o mês for Abril, Junho, Setembro ou Novembro, dia não pode ser 31 return 0; else return 1; } ?>
Reduzindo o comprimento de links postados em seu site
Ordenando de forma crescente e decrescente valores de um vetor em PHP utilizando a estrutura for.
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
redirecionando saida de comando touch para o AWK[AJUDA] (15)
iso de sistema 32 bit em atividade (25)
Problemas com o Lutris e o Wine no Slackware 15.0 (0)