pedro555 Postado Novembro 3, 2007 Denunciar Share Postado Novembro 3, 2007 Bom dia,Estou montando um sistema de gerenciamento de notícias, como um PHP-NUKE, obvio que mais simples..porém eu aprendi bastante fazendo sozinho.Vamos a dúvida.Para incluir uma notícia, tem um formulário:inserir titulo, materia,fonte, autor, data, etc..Como faço para digitar a data no formulário no formato d/m/Y ??porque eu só consigo inserir data no formato Y-m-dNão é só pegar a data do dia, porque eu vou fazer cadastro de notícias antigas também..com datas do ano passado...Apenas isso.Obrigado! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 3, 2007 Denunciar Share Postado Novembro 3, 2007 O formato padrão de data do MySQL é 0000-00-00, então, para colocar as datas no formato DD/MM/AAAA, você precisa tratar o campo assim:$snova_data = implode("-", array_reverse(explode("/", $data)));(Script por Fabyo, post de Beraldo, em: http://scriptbrasil.com.br/forum/index.php?showtopic=91087 ) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 3, 2007 Autor Denunciar Share Postado Novembro 3, 2007 ola,obrigado pela resposta.Porém não entendi uma coisa:$snova_data = implode("-", array_reverse(explode("/", $data)));esta $data é a variável que criei para o campo data certo? e a $snova_data???Coloquei esta linha antes do formulário começar embaixo do INSERT etc..e tem outra página que exibe as noticias cadastradas, a data continua no formato 0000-00-00o que fiz:$nova_data = implode("-", array_reverse(explode("/", $data_noticia)));Tem um lugar expecifico para eu colocar isso?valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 3, 2007 Denunciar Share Postado Novembro 3, 2007 Esse $nova_data é a variável que contém a data pronta pra ser salva no MySQL, então na hora de você fazer a query, ao invés de colocar o $data_noticia, colocará o $nova_data para salvar.Assim ele salvará a data no formato 0000-00-00 do MySQL! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 3, 2007 Autor Denunciar Share Postado Novembro 3, 2007 certo entendi..só que agora o que fiz de errado??coloquei essa linha e mesmo assim continua mostrando a data no formato 0000-00-00, alias, quando eu vou adicionar a noticia e coloco a dataexemplo: 12/10/2007quando exibe a noticia com a data, aparece 0000-00-00 e não 2007-10-12, coloquei a linha no lugar certo?valeu ae!olha o que eu coloquei aonde exibe as noticias: <?php include ("config.php"); $sql = mysql_query("SELECT * FROM noticias") or die("Erro ao consultar a tabela"); while($campo = mysql_fetch_array($sql)){ $data_nova= implode("-", array_reverse(explode("/", $campo['data_noticia']))); ?>Está certo isso que eu coloquei??? para poder exibir a data no formato d/m/Ya variavél da noticia é $data_noticia.Outra coisa, para eu poder digitar a data no formato d/m/Y em um formulário:<? include ("config.php"); if($_GET["postar]== "ok"){ $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_noticia','$texto')"); $data_nova = implode("-", array_reverse(explode("/", $campo['data_noticia']))); echo "dados inseridos com sucesso"; } ?>Está faltando alguma coisa, porque para inserir a data no formato d/m/Y não está funcionando e para exibir esta assim: 0000-00-00 com os 0s mesmo, não está funcionando..hehehe!Valeu! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 5, 2007 Denunciar Share Postado Novembro 5, 2007 Vamos por partes, e primeiro pela inclusão:A data ainda aparece como 0000-00-00 porque o código está ao contrário!Em vez de fazer isso:... $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_noticia','$texto')"); $data_nova = implode("-", array_reverse(explode("/", $campo['data_noticia']))); ... Faça isso: ... $data_noticia = campo["data_noticia"]; $data_nova = implode("-", array_reverse(explode("/", $data_noticia))); $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_nova','$texto')"); ... Veja que primeiro eu processo a data, e depois mando adicionar essa data processada no MySQL. Agora a parte de receber a data: Para isso, seguindo seu código, faça: ... $sql = mysql_query("SELECT * FROM noticias") or die("Erro ao consultar a tabela"); while($campo = mysql_fetch_array($sql)){ $data = $campo["data_noticia"]; $data_nova= implode("/", array_reverse(explode("-", $data_noticia))); ...Note que a única coisa que fiz foi mandar tirar o - e colocar a / na data, depois de ela ser invertida! (array_reverse) Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 7, 2007 Autor Denunciar Share Postado Novembro 7, 2007 boa noite, Obrigado pela ajuda, mas ainda continua dando erro..ou seja, continuo tentando inserir a data no formato d/m/Y mas continua aparecendo 0000-00-00só consigo adicionar assim: 2007-11-07 ai sim aparece a data certa...o que mais pode ser...??fiz tudo o que estava ai...quer que eu poste aqui o código da página de inserir matéria??valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 8, 2007 Denunciar Share Postado Novembro 8, 2007 Posta o código da página aqui, vamos ver o que acontece. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 8, 2007 Autor Denunciar Share Postado Novembro 8, 2007 bom dia,está aqui o código para inserir a notícia:<div id="cima"> <? include("cima_adm2.html")?> </div> <div id="meio"> <? include ("config.php"); if($_GET["postar"] == "ok"){ $data_noticia = $campo["data_noticia"]; $data_nova = implode("-", array_reverse(explode("/", $data_noticia))); $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_noticia','$texto')"); echo "dados inseridos com sucesso"; } ?> <form name="form" method="post" action="?postar=ok"> <div id="tab_inserir"> <div id="tab_inserir_tt">Título:<br /><input name="titulo" type="text" id="titulo" size="80" /></div> <div id="tab_inserir_data">Data:<br /> <input type="text" name="data_noticia" id="data_noticia"/> </div> <div id="tab_inserir_edicao">Edição:<br /> </div> <div id="tab_inserir_materia">Matéria:<br /><textarea name="texto" cols="100" rows="50"></textarea></div> <div id="tab_inserir_fonte">Escrito por:</div> <center><input name="submit" type="submit" value="Enviar"></center> </div> </form> </div> <div id="baixo"> <? include("baixo_adm.html")?> </div> vou colocar também o código de mostrar as notícias: <?php include ("config.php"); $sql = mysql_query("SELECT * FROM noticias") or die("Erro ao consultar a tabela"); while($campo = mysql_fetch_array($sql)){ $data_noticia = $campo["data_noticia"]; $data_nova= implode("/", array_reverse(explode("-", $data_noticia))); ?> <div id="tab2"> <div id="tab_titulo2"><?php echo $campo["titulo"];?></div> <div id="tab_data2" align="center"><? echo $campo["data_noticia"];?></div> <div id="tab_excluir2" align="center"> <? echo "<a href=\"excluir.php?id=".$campo["id"]."\">"; echo "<img src=\"imagens/excluir.gif\" width='20' height='20' border=0/>"; echo "</a>"; ?></div> <div id="tab_alterar2" align="center"> <? echo "<a href=\"alterar.php?id=".$campo["id"]."\">"; echo "<img src=\"imagens/editar2.gif\" width='20' height='20' border=0/>"; echo "</a>"; ?> </div> <div id="tab_visualizar2" align="center"> <? echo "<a href=\"exibir.php?id=".$campo["id"]."\">"; echo "<img src=\"imagens/visualizar.gif\" width='20' height='20' border=0/>"; echo "</a>"; ?> </div> </div> <? } ?>Se ajudar agradeço.Valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 8, 2007 Denunciar Share Postado Novembro 8, 2007 Você não alterou a query da forma que eu postei acima.Troque a query:$inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_noticia','$texto')"); Pela query: $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_nova','$texto')"); E no código que mostra as notícias, troque: <div id="tab_data2" align="center"><? echo $campo["data_noticia"];?></div> Por: <div id="tab_data2" align="center"><? echo $data_nova;?></div> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Guest --pedro555 -- Postado Novembro 11, 2007 Denunciar Share Postado Novembro 11, 2007 Continuo não conseguindo adicionar a data, porém já aparece no formato d/m/Yjá é um começo...rsrsrsVou postar o código de como ficou:inserir.php<? include ("config.php"); if($_GET["postar"] == "ok"){ $data_noticia = $campo["data_noticia"]; $data_nova = implode("-", array_reverse(explode("/", $data_noticia))); $inserir = mysql_query("INSERT INTO noticias (titulo, data_noticia, texto) VALUES ('$titulo','$data_nova','$texto')"); echo "dados inseridos com sucesso"; } ?> <form name="form" method="post" action="?postar=ok"> <div id="tab_inserir"> <div id="tab_inserir_tt">Título:<br /><input name="titulo" type="text" id="titulo" size="80" /></div> <div id="tab_inserir_data">Data:<br /><input type="text" name="data_noticia" id="data_noticia"/></div> <div id="tab_inserir_materia">Matéria:<br /><textarea name="texto" cols="100" rows="50"></textarea></div> <div id="tab_inserir_fonte">Escrito por:</div> <center><input name="submit" type="submit" value="Enviar"></center> </div> </form> código onde mostra as notícias: <?php include ("config.php"); $sql = mysql_query("SELECT * FROM noticias") or die("Erro ao consultar a tabela"); while($campo = mysql_fetch_array($sql)){ $data_noticia = $campo["data_noticia"]; $data_nova = implode("/", array_reverse(explode("-", $data_noticia))); ?> <div id="tab2"> <div id="tab_titulo2"><?php echo $campo["titulo"];?></div> <div id="tab_data2" align="center"><? echo $data_nova;?></div> Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 11, 2007 Autor Denunciar Share Postado Novembro 11, 2007 Eu estou tentando inserir a data no formato d/m/Y , certo né?? ou é d-m-Y??valeu Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 12, 2007 Denunciar Share Postado Novembro 12, 2007 Está certo, a data tem que ser inserida no formato d/m/y .Mas dá uma olhada aí no $data_noticia = $campo["data_noticia"];De onde vem esse $data_noticia = $campo["data_noticia"]; ?Não tem como pegar essa data com GET ou POST? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 14, 2007 Autor Denunciar Share Postado Novembro 14, 2007 Como daonde vem?? você que pediu para eu colocar....a data é pega com POST.Não entendi nada do que você disse! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 MLeandroJr! Postado Novembro 14, 2007 Denunciar Share Postado Novembro 14, 2007 Não, não.Essa parte do código não foi mexida...Mas você diz que $data_noticia = $campo["data_noticia"];...E como o PHP sabe o valor de $campo["data_noticia"]; ?Você atribui isso em algum lugar?Não seria então:$data_noticia = $_POST["data_noticia"];No lugar disso? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pedro555 Postado Novembro 17, 2007 Autor Denunciar Share Postado Novembro 17, 2007 (editado) Ahhh..agora entendi..Faltava pegar a data né???Deu tudo certo agora, obrigado, e desculpa qualquer coisa!Tenho várias outras dúvidas, porém vou postar um tópico para explicar, é sobre comentário na notícia.Valeu Lvcifer! Editado Novembro 17, 2007 por pedro555 Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
pedro555
Bom dia,
Estou montando um sistema de gerenciamento de notícias, como um PHP-NUKE, obvio que mais simples..porém eu aprendi bastante fazendo sozinho.
Vamos a dúvida.
Para incluir uma notícia, tem um formulário:
inserir titulo, materia,fonte, autor, data, etc..
Como faço para digitar a data no formulário no formato d/m/Y ??
porque eu só consigo inserir data no formato Y-m-d
Não é só pegar a data do dia, porque eu vou fazer cadastro de notícias antigas também..
com datas do ano passado...
Apenas isso.
Obrigado!
Link para o comentário
Compartilhar em outros sites
15 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.