Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafasemed

data de nascimento

Recommended Posts

Para gravar a data, você cria um formulário com o campo:

 

<input type="text" name="dataNasc" id="dataNasc" />
O usuário vai digitar DD/MM/AAAA.

 

Na página que recebe os dados, você faz assim:

$data = implode('-',array_reverse(explode('/',$_POST['dataNasc'])));
$sql ="INSERT INTO tabela (data_nascimento) VALUES ('$data')";
Para isto, o campo do seu banco de dados deve estar no formato Date, que aceita data no formato AAAA-MM-DD.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como está o seu código neste momento? O código do formulário e o código que recebe os valores.

Como está a estrutura da sua tabela no banco de dados? Poste-a aqui.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

minha tabela esta data_nascimento - date só isso

 

 

 

e só estou testando a data e meu formulario até joguei fora pois tentei tudo isso e nada deu certo, acada um fala de um geito , ja entendi que a hora tem de ser convertida para o formato brasileiro e gostaria que tivesse uma regra que separasse por 00/00/0000 barra quando a pessoa digitasse no input é isso que eu quero .

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha só EU te passei 2 formas de fazer a conversão da data, do formato brasileiro para o formato a ser gravado no DB.

Você precisa entender o que está sendo proposto para você como solução, pois ninguém colocou o código funcionando, todos deram exemplos de funcionamento.

 

Não tem como ficar mais claro que o meu penúltimo post. Coloquei como tem que ficar o campo do formulário, como tem que fazer tratar a data e como tem que jogar no INSERT para o banco de dados. Mais do que isto não tem como te ajudar amigão.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Quanta confusão hehehehe.

 

Pessoal, a coisa mais simples é converter uma dada, não é preciso usar implode, explode, etc...

 

basta utilizar:

 

<?php
$data = '12/12/2009';
echo date('Y-m-d', strtotime($data));
?>

meu amigo, não é necessário tanta dificuldade assim pra uma coisa simples, veja só:

 

<form name="gravardata" action="?acao=gravar" method="POST">
Data: <input type="text" name="data" value="20/12/2009" />
<input type="submit" name="gravar" value="Gravar data">
</form>

<?php 
if($_SERVER['REQUEST_METHOD']=='POST' and $_SERVER['QUERY_STRING']=='acao=gravar')
{
   $data = date('Y-m-d',strtotime($_POST['data']));
   
   $inserir = mysql_query("INSERT INTO tabela (campodata) VALUES('$data')")or die(mysql_error());

}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites
e gostaria que tivesse uma regra que separasse por 00/00/0000 barra quando a pessoa digitasse no input é isso que eu quero .

 

eu postei um exemplo de como fazer isso com Jquery, mas acho que você nem teve vontade de olhar ou testar.

 

Alaerte Gabriel - Quanta confusão hehehehe.

 

Pessoal, a coisa mais simples é converter uma dada, não é preciso usar implode, explode, etc...

Alaerte Gabriel você esta errado pois a função strtotime só aceita data no padrao yyyy-mm-dd

 

http://br.php.net/manual/pt_BR/function.strtotime.php

strtotime — Analisa qualquer descrição em texto em inglês de data hora em timestamp Unix

 

A função espera que seja dado uma string contendo um formato de data em inglês US e tentará analisar esse formato dentro de um timestamp Unix (o número de segundos desde January 1 1970 00:00:00 GMT), relativo ao timestamp dado em now , ou a hora atual se now não é fornecido.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.