Validando data em formulário
Publicado por Fábio Berbert de Paula 15/08/2003
[ Hits: 15.026 ]
Homepage: https://fabio.automatizando.dev
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;
}
?>
Usando str_replace para substituir o endereço pela figura.
PHP Redimensionar imagem + marca d'agua
Dia da semana, dia do mes, mes atual e ano.
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Instalando partes faltantes do Plasma 6
Adicionar botão "mostrar área de trabalho" no Zorin OS
Como montar um servidor de backup no linux
Estou tentando ser legalista, mas tá complicado! (9)
espelhar monitores nao funciona (2)
SQLITE não quer funcionar no LINUX LMDE6 64 com Lazaruz 4.2 64bit (n... (1)









