Ir para conteúdo

POWERED BY:

Arquivado

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

Marcelo_nd

[Resolvido] Inserindo data no formato brasileiro no mysql...

Recommended Posts

Como faço para inseir datas em formato brasileiro no mysql via php?!?!?!

 

tenho q criar uma função?!?!?!

 

<?php

 

// Mensagens de Erro

$msg[0] = "Conexão com o banco falhou!";

$msg[1] = "Não foi possível selecionar o banco de dados!";

 

// Fazendo a conexão com o servidor MySQL

$conexao = mysql_pconnect("localhost","root", "") or die($msg[0]);

mysql_select_db("csmcc",$conexao) or die($msg[1]);

 

// Colocando o Início da tabela

 

 

 

if($_SERVER["REQUEST_METHOD"] == "POST") {

$nome = $_POST["txtnome"];

$especialidade = $_POST["txtespecialidade"];

$medico = $_POST["txtmedico"];

$data = $_POST["txtdata"];

$hora = $_POST["txthora"];

}

 

 

//(nome_paciente,especialidade,medico,data_consulta,hora)

$x = mysql_query("INSERT INTO agendamento ( nome_paciente , especialidade , medico , data_consulta , hora ) VALUES ( '$nome' , '$especialidade' , '$medico' , '$data' , '$hora')");

 

if(mysql_affected_rows()==1){

echo "Registro efetuado com sucesso!!!<br />";

}

 

else {

//verifico se nao estao tentando gravar um dado que ja existe, pois usei UNIQUE na tabela

if(mysql_errno() == 1062) {

echo $erros[mysql_errno()];

exit;

} else {

echo "Erro! Nao foi possivel efetuar o cadastro!!!";

exit();

}

mysql_close($conexao);

 

} //se o arquivo nao for inserido ele execura o else

?>

onde eu colocaria essa função ou esse codigo no meu script?!??!?!

 

vlw galera...Deus abençoe..

Compartilhar este post


Link para o post
Compartilhar em outros sites

para fazer isso usa data_format ou format_data nao sei bem no sql para isso ou existe em php

 

no site do IMASTERS tem um sistema deste... busca nos artigos deles...

 

se nao me engano é o Leandro da imasters

Compartilhar este post


Link para o post
Compartilhar em outros sites

Como faço para inseir datas em formato brasileiro no mysql via php?!?!?!

 

tenho q criar uma função?!?!?!

 

<?php

 

// Mensagens de Erro

$msg[0] = "Conexão com o banco falhou!";

$msg[1] = "Não foi possível selecionar o banco de dados!";

 

// Fazendo a conexão com o servidor MySQL

$conexao = mysql_pconnect("localhost","root", "") or die($msg[0]);

mysql_select_db("csmcc",$conexao) or die($msg[1]);

 

// Colocando o Início da tabela

 

 

 

if($_SERVER["REQUEST_METHOD"] == "POST") {

$nome = $_POST["txtnome"];

$especialidade = $_POST["txtespecialidade"];

$medico = $_POST["txtmedico"];

$data = $_POST["txtdata"];

$hora = $_POST["txthora"];

}

 

 

//(nome_paciente,especialidade,medico,data_consulta,hora)

$x = mysql_query("INSERT INTO agendamento ( nome_paciente , especialidade , medico , data_consulta , hora ) VALUES ( '$nome' , '$especialidade' , '$medico' , '$data' , '$hora')");

 

if(mysql_affected_rows()==1){

echo "Registro efetuado com sucesso!!!<br />";

}

 

else {

//verifico se nao estao tentando gravar um dado que ja existe, pois usei UNIQUE na tabela

if(mysql_errno() == 1062) {

echo $erros[mysql_errno()];

exit;

} else {

echo "Erro! Nao foi possivel efetuar o cadastro!!!";

exit();

}

mysql_close($conexao);

 

} //se o arquivo nao for inserido ele execura o else

?>

onde eu colocaria essa função ou esse codigo no meu script?!??!?!

 

vlw galera...Deus abençoe..

 

 

eu uso esse escipt aki

if (strstr($data, "/")){
		$aux2 = explode ("/", $data);
		$data2 = $aux2[2] . "-". $aux2[1] . "-" . $aux2[0];
	  }
	  //Checando a validade da data 
	  if (strstr($data2, "-") ) {//1
		$aux1 = explode("-", $data2);
		$dataD = $aux1[2]; 
		$dataM = $aux1[1]; 
		$dataA = $aux1[0];
		if (checkdate($dataM, $dataD, $dataA) ){
// aki coloco minha instrucao sql, passando a variavel $data2 como parametro
você coloca antes de gravar no mysql.

 

espero q isso te ajude.

Compartilhar este post


Link para o post
Compartilhar em outros sites

então Marcelo

 

o MySql aceita o formato yyyy-mm-dd

 

você tem q usar uma função pra converter a data brasileira e jogar assim no banco.... e usar uma pra printar a versão brasileira!!!

Essa são as funcoes!!

 

CODE
function data2banco ($d2b) {

if(!empty($d2b)){

$d2b_ano=substr($d2b,6,4);

$d2b_mes=substr($d2b,3,2);

$d2b_dia=substr($d2b,0,2);

$d2b="$d2b_ano-$d2b_mes-$d2b_dia";

}

return $d2b;

}

function banco2data($b2d) {

if($b2d=="0000-00-00" or empty($b2d)){

$b2d="";

return $b2d;

}else{

$b2d_ano=substr($b2d,0,4);

$b2d_mes=substr($b2d,5,2);

$b2d_dia=substr($b2d,8,2);

$b2d=$b2d_dia.'/'.$b2d_mes.'/'.$b2d_ano;

return $b2d;

}

}

 

antes de fazer uma inserção no BD tem que converter assim

$data=data2banco($data);

 

 

e quando você for exibir a data do banco faz assim

 

$data=banco2data($data);

 

 

entendeu?

qualquer coisa avise!!!

Compartilhar este post


Link para o post
Compartilhar em outros sites

if (strstr($data, "/")){

$aux2 = explode ("/", $data);

$data2 = $aux2[2] . "-". $aux2[1] . "-" . $aux2[0];

}

//Checando a validade da data

if (strstr($data2, "-") ) {//1

$aux1 = explode("-", $data2);

$dataD = $aux1[2];

$dataM = $aux1[1];

$dataA = $aux1[0];

if (checkdate($dataM, $dataD, $dataA) ){

// aki coloco minha instrucao sql, passando a variavel $data2 como parametro

 

 

//(nome_paciente,especialidade,medico,data_consulta,hora)

$x = mysql_query("INSERT INTO agendamento ( nome_paciente , especialidade , medico , data_consulta , hora ) VALUES ( '$nome' , '$especialidade' , '$medico' , '$data2' , '$hora')");

}

}

if(mysql_affected_rows()==1){

echo "Registro efetuado com sucesso!!!<br />";

}

 

else {

//verifico se nao estao tentando gravar um dado que ja existe, pois usei UNIQUE na tabela

if(mysql_errno() == 1062) {

echo $erros[mysql_errno()];

exit;

} else {

echo "Erro! Nao foi possivel efetuar o cadastro!!!";

exit();

}

mysql_close($conexao);

} //se o arquivo nao for inserido ele execura o else

?>

colokei esse codigo no meu script + ele nao ta conseguindo cadastrar os registros...

 

agora fikei + enrolado...uhauahuahauh....+ vlw....

 

vlw...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa disso tudo, pra trazer uma data para o formato padrão basta executar:

 

<?php
$data='2008-06-02';

echo implode('/',array_reverse(explode('-',$data)));
?>

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.