lsteffler 0 Denunciar post Postado Março 20, 2008 Bom dia! Tenho um formulario de cadastro de notícia onde existem os campos Data e Hora, e gostaria que estes fossem preenchidos automaticamente, alguem poderia me explicar como fazer? cadastro.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>Cadastro</title> </head> <body> <form id="form1" name="form1" method="post" action="salvar.php"> <h2 align="center"><strong>Cadastro de Notícias</strong></h2> <table width="390" border="1" align="center"> <tr> <td width="165">Título</td> <td width="209"><input name="titulo" type="text" id="titulo" /></td> </tr> <tr> <td>Autor</td> <td><input name="autor" type="text" id="autor" /></td> </tr> <tr> <td>Data</td> <td><input name="data" type="text" id="data" /></td> </tr> <tr> <td>Hora</td> <td><input name="hora" type="text" id="hora" /></td> </tr> <tr> <td>Materia</td> <td><textarea name="materia" type="textarea" cols="45" rows="10" id="materia" /> </textarea></td> </tr> <tr> <td>Foto</td> <td><input name="foto" type="text" id="foto" /></td> </tr> <tr> <td> </td> <td><input type="submit" name="Submit" value="Gravar" style="cursor:pointer"/></td> </tr> </table> </form> </body> </html> salvar.php <?php @ini_set('display_errors', '1'); error_reporting(E_ALL); $titulo = $_POST["titulo"]; $autor = $_POST["autor"]; $data = $_POST["data"]; $hora = $_POST["hora"]; $materia = $_POST["materia"]; $foto = $_POST["foto"]; mysql_connect("localhost", "lsteffler", "lsteffler"); mysql_select_db("banco"); mysql_query("INSERT INTO noticias ( id_noticias , titulo , autor , data , hora , materia , foto ) VALUES ( NULL , '$titulo', '$autor', '$data', '$hora', '$materia', '$foto')"); mysql_close(); echo "Salvo com sucesso<br />"; ?> <a href="index.html">Voltar</a> No banco de dados já está definido na tabela a data (date) e a hora (time). Vlw! Compartilhar este post Link para o post Compartilhar em outros sites
Renan Decarlo 2 Denunciar post Postado Março 20, 2008 Pode colocar a estrutura da data e da hora como timestamp no bd, e assim é só colocar NOW() em vez de '$data', etc. Se preferir, pode colocar assim também. $data = date("d/m/y", time()); $hora = date("H:i:s", time()); E aí acho que não seria mais necessário os campos no formulário de data e hora né? :huh: Compartilhar este post Link para o post Compartilhar em outros sites
lsteffler 0 Denunciar post Postado Março 20, 2008 Renam... É... na realidade estes campos eu vou utilizar na pagina onde serão exibidas as noticias, mostrando a data e hora em que foram postadas, entende. Compartilhar este post Link para o post Compartilhar em outros sites
Mecho com php e Html 0 Denunciar post Postado Março 20, 2008 Cara, coloca um campo hidden assim: <input name="data" type="hidden" id="data" value="<? echo time(); ?>" /> Vai vim um número bem grandão. Manda inserir no banco de dados com inteiro. Depois, na hora de exibir, faça que nem o Renan falou. $data= date("d/m/y",$numerograndao); $hora= date("H:i", $numerograndao); echo "$data - $hora"; o d põe o número do dia, o m põe o número do mes e o y põe o ano com 2 dígitos. o H põe as horas no sistema brasileiro(12,13,14... sem am e pm) e o i põe os minutos. se quiser dar uma olhada em o que cada letra faz, clique aqui Compartilhar este post Link para o post Compartilhar em outros sites
Renan Decarlo 2 Denunciar post Postado Março 20, 2008 Renam... É... na realidade estes campos eu vou utilizar na pagina onde serão exibidas as noticias, mostrando a data e hora em que foram postadas, entende. Ahhhhhhhh, odeio quando erram meu nome :wacko:, é com N no final http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Mas funcionou do jeito que eu disse? O que eu quiz dizer é que se o PHP já vai colocar a data automaticamente, não é necessário ter um campo pra colocar a data e a hora né? :mellow: Cara, coloca um campo hidden assim: <input name="data" type="hidden" id="data" value="<? echo time(); ?>" /> Vai vim um número bem grandão. Manda inserir no banco de dados com inteiro. Depois, na hora de exibir, faça que nem o Renan falou. $data= date("d/m/y",$numerograndao); $hora= date("H:i", $numerograndao); echo "$data - $hora"; o d põe o número do dia, o m põe o número do mes e o y põe o ano com 2 dígitos. o H põe as horas no sistema brasileiro(12,13,14... sem am e pm) e o i põe os minutos. se quiser dar uma olhada em o que cada letra faz, clique aqui É, exatamente. O problema é que o form está em .html, 'cadastro.html'. E aí ele teria que mudar pra php, então é mais conveniente colocar já na parte php, que não iria precisar mudar nada http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites
lsteffler 0 Denunciar post Postado Março 20, 2008 RenaNNNNN.... :rolleyes: Deixei assim: $titulo = $_POST["titulo"]; $autor = $_POST["autor"]; $data = date("d/m/y"); $hora = date("H:i:s"); $materia = $_POST["materia"]; $foto = $_POST["foto"]; Tive que tirar o time() pq com ele nao fazia nem o cadastro. E no BD deixei como Time no formato 00:00 ma no resultado aparece no formato 00:00:00 E a data deixei como DATE e sem formato, apareceu a data porem aparece esta data: 2020-03-08 A data do meu computador está correta nao entendi o pq desta data e nao sei como inverter isso pro format BR. E realmente, com isso eu vou retirar do formulario os campos de data e hora entendi agora o q você quis dizer http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif ah... derepente tenha q modificar algo no listar.php? <body> <?php if(mysql_num_rows($resultado) < 1) { exit; } ?> <h2 align="center"><strong>Lista de Notícias Cadastradas</strong></h2> <table border="1" align="center"> <tr> <th>ID</th> <th>TITULO</th> <th>AUTOR</th> <th>DATA</th> <th>HORA</th> <th>MATERIA</th> <th>FOTO</th> <th>EDITAR/EXCLUIR</th> </tr> <?php while($l = mysql_fetch_array($resultado)) { $id = $l["id_noticias"]; $titulo = $l["titulo"]; $autor = $l["autor"]; $data = $l["data"]; $hora = $l["hora"]; $materia = $l["materia"]; $foto = $l["foto"]; echo" <tr> <td>$id</td> <td>$titulo</td> <td>$autor</td> <td>$data</td> <td>$hora</td> <td>$materia</td> <td>$foto</td> <td><a href=\"editar.php?id=$id\">[Editar]</a> | <a href=\"excluir.php?id=$id\">[Excluir]</a></td> </tr>\n"; } ?> </table> Compartilhar este post Link para o post Compartilhar em outros sites
Renan Decarlo 2 Denunciar post Postado Março 20, 2008 RenaNNNNN.... :rolleyes: Aiiiii, qui fofuuuu :rolleyes: Bom........ haha, eu te dei duas opções, não quer dizer que era pra fazer as duas http://forum.imasters.com.br/public/style_emoticons/default/blush.gif Você pode mudar o bd pra timestamp, e assim no INSERT colocar NOW() nas datas... ou então usar o $data = date("d/m/y"); $hora = date("H:i:s");com o bd em varchar mesmo... Se você colocou o bd com timestamp, então deixa o insert assim: mysql_query("INSERT INTO noticias ( id_noticias , titulo , autor , data , hora , materia , foto ) VALUES ( NULL , '$titulo', '$autor', NOW(), NOW(), '$materia', '$foto')"); Acho que é assim o.O, não tenho certeza se é os dois com NOW()... Compartilhar este post Link para o post Compartilhar em outros sites
lsteffler 0 Denunciar post Postado Março 22, 2008 Vlw! deu td certo aqui! Abraços! http://forum.imasters.com.br/public/style_emoticons/default/clap.gif http://forum.imasters.com.br/public/style_emoticons/default/clap.gif Compartilhar este post Link para o post Compartilhar em outros sites