Você está na página 1de 9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

Verso Completa: Inserindo


Data Em Mysql !

A juda - Busca - Membros - Calendrio

Frum Script Brasil > Programao & Desenvolvimento > PHP

felipeatto

28/04/2004 - 10:09

qual o melhor tipo de campo para inserir letras e nmeros juntos no mysql???
e no html as inputs podem ser tipo text para inserir esse tipo de dado no mysql???
qual a melhor interface que eu devo mostrar no html para salvar num campo tipo date do
mysql??/
akelas caixas de texto separadas, uma para dia, outra para ms e outra para ano... ou
eu fao tudo em uma dividida por "/" ou "-"??? qual a melhor opo e para salvar eu vou
ter q usar alguma opo especial do php para isso???
Valeus..

dev

28/04/2004 - 10:32

Oi, felipeatto. jia, cara?


Olha, no posso te ajudar muito, porque tambm estou comeando...
mas quanto data, tenta fazer isso:
* na incluso da data, voc cria uma $ definindo o formato que a data deve ir pro mysql,
a voc pe uma caixa text e instruo de como a pessoa deve preencher: dd/mm/aaa

QUOTE
$datanascimento= trim($_POST["Nascimento"]);
if (strstr($nascimento, "/")){
$aux2 = explode ("/", $nascimento);
$datai2 = $aux2[2] . "-". $aux2[1] . "-" . $aux2[0];
}
* para imprimir a data no formato correto na pgina, voc coloca assim
no select:
QUOTE
$sql = "SELECT date_format(nascimento,'%d/%m/%Y') as
nascimento FROM tabela";
Bom, eu usei assim... e funcionou... se t faltando alguma coisa ou se
no bem isso que voc quer... desculpa a...
no devia nem t me metendo a responder, mas que ralei pra
encontrar esse troo da data, tambm...
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

1/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

a inteno s ajudar, flz...


boa sorte.
toretto_PHP

28/04/2004 - 10:46

Dev, funciona legal esse cdigo, no conhecia ele...


Mas eu fiz assim... eu tenho dois campos data. Uma para dia que foi feito o cadastro,
que defini no insert.php e outro que toda vez que eu atualizar o sistema vai gerar data e
hora de atualizao.
A data normal somente defini date("d/m/Y");
Para Tempo eu defini da seguinte forma...
$data = date("d/m/Y - H:i:s",time() - 86400 * 1);
Bom, tenta isso ae Felipe...
----------------------------------qual o melhor tipo de campo para inserir letras e nmeros juntos no mysql???
R. Para data eu uso DATE. Mas para receber letras e numeros, VARCHAR. Somente
Nmero INT. Para definir moeda, uso FLOAD(10,2), por exemplo... Bsicamente isso.
e no html as inputs podem ser tipo text para inserir esse tipo de dado no
mysql???
R. Pode ser usado SELECT, HIDDEN, TEXT, BOX... O que importa a definio do seu
banco de dados... Me refiro a quantidade de caracteres a ser inserido. Vc define...
CHAR(255) vai receber 255 caracteres, TEXT() vai receber quantos caracteres quiser...
INT(10), vai receber 10 nmeros... e assim por diante...
Em relao a Interface, voc pode usar o padro normal...
Um select para dia, um select para ms e um para o ano.
Ae vc pega os 3 valores, junta e salva...
Se quiser mais explicao, sobre isso, posta e...
Flw
Eduardo

felipeatto

28/04/2004 - 11:05

valeu galera pelas postagens muito boas brigado...


...vou tentar aki da eu posto pra vcs o resultado valeu !!!

felipeatto

28/04/2004 - 11:16

cara ta meio estranho os negcios..acho q eu t bobeando em alguma coisa..vou mandar


meus dois cdigos, os do html e os do arquivo .php pra vcs, se quiserem dar uma
olhadinha....
interface HTML:
<html>
<body>
<form name=form method=post action=confirmcad.php>
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

2/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

<table border=0>
<tr>
<big><u>Cadastro de Placas:</u></big>
</tr><br>
<tr>
<td width=200>Tipo da Placa:</td><td><input type="text" name="tipo" size=15></td>
</tr>
<tr>
<td>Part-Number:</td><td><input type="text" name="part" size=30></td>
</tr>
<tr>
<td>Central:</td><td><input type="text" name="central" size=30></td>
</tr>
<tr>
<td>Nmero de Srie:</td><td><input type="text" name="numero" size=10></td>
</tr>
<tr>
<td>Data de Entrada:</td><td><input type="date" name="entrada" size=10></td>
</tr>
<tr>
<td>Fornecedor:</td><td><input type="text" name="fornecedor" size=20></td>
</tr>
<tr>
<td>Nota Fiscal n:</td><td><input type="text" name="notaf" size=10></td>
</tr>
<tr>
<td>Prateleira:</td><td><input type="text" name="prateleira" size=5></td>
</tr>
<tr>
<td>Observao:</td><td><textarea name="obs" cols=20 rows=3></textarea></td>
</table>
<tr><input type="submit" name="botao" value="Salvar Cadastro"></tr>
</form>
</body>
</html>
Agora o arquivo PHP:
<?php
$db = mysql_connect("localhost");
if (!$db)
{
echo ("Sem conexo com o banco de dados!");
exit;
}
mysql_select_db("test", $db);
$entrada = trim($_POST["entrada"]);
if (strstr($entrada, "/")){
$aux2 = explode ("/", $entrada);
$datai2 = $aux2[2] . "-". $aux2[1] . "-" . $aux2[0];
}
$inserir = mysql_query("INSERT INTO tabelateste VALUES('$tipo', '$part', '$central',
'$numero', '$datai2', '$fornecedor', '$notaf', '$prateleira', '$obs')");
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

3/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

if(!inserir){
echo "Erro ao tentar inserir os dados!! ".mysql_error();
}else{
echo "Dados inseridos com sucesso!!! ";
}
?>
toretto_PHP

28/04/2004 - 11:30

A Felipe, tenta isso q fiz...


flw...

Formulrio Modificado

QUOTE
<html>
<body>
<form name=form method=post action=confirmcad.php>
<table border=0>
<br>
<tr>
<td width=200>Tipo da Placa:</td>
<td><input type="text" name="tipo" size=15></td>
</tr>
<tr>
<td>Part-Number:</td>
<td><input type="text" name="part" size=30></td>
</tr>
<tr>
<td>Central:</td>
<td><input type="text" name="central" size=30></td>
</tr>
<tr>
<td>Nmero de Srie:</td>
<td><input type="text" name="numero" size=10></td>
</tr>
<tr>
<td>Fornecedor:</td>
<td><input type="text" name="fornecedor" size=20></td>
</tr>
<tr>
<td>Nota Fiscal n:</td>
<td><input type="text" name="notaf" size=10></td>
</tr>
<tr>
<td>Prateleira:</td>
<td><input type="text" name="prateleira" size=5></td>
</tr>
<tr>
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

4/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

<td>Observao:</td>
<td><textarea name="obs" cols=20 rows=3></textarea>
</td>
</table>
<tr><input type="submit" name="botao" value="Salvar Cadastro">
</tr>
</form>
</body>
</html>

ARQUIVO PHP
QUOTE

<?php
// Definindo data
$datai2 = date("d/m/Y");

// insere a data atual

// Pegando dados da tabela


$tipo
= $_POST["tipo"];
$part
= $_POST["part"];
$central
= $_POST["central];
$numero
= $_POST["numero"];
$fornecedor = $_POST["fornecedor"];
$notaf
= $_POST["notaf"];
$prateleira
= $_POST["prateleira"];
$obs
= $_POST["obs"];
$conn = mysql_connect("localhost","","") or die("Impossvel
conectar, ".mysql_error());
$db = mysql_select_db("test");

$inserir = mysql_query("
INSERT INTO teste
(tipo, part, central, numero, datai2, fornecedor, notaf,
prateleira, obs)
VALUES('$tipo', '$part', '$central', '$numero', '$datai2', '$fornecedor',
'$notaf', '$prateleira', '$obs') ");
if(!inserir){
echo "Erro ao tentar inserir os dados!! ".mysql_error();
}else{
echo "Dados inseridos com sucesso!!! ";
}
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

5/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

?>

Alguma dvida, tc ae... flw...


Fabyo

28/04/2004 - 11:40

Vc esta usando algum campo com autoincremento no comeo da tabela ?


se tiver vc tem que colocar assim:
se vc quer colocar a data atual use o now() mais pratico
$inserir = mysql_query("INSERT INTO tabelateste VALUES('','$tipo', '$part', '$central',
'$numero',now(), '$fornecedor', '$notaf', '$prateleira', '$obs')");
e outra coisa se vc usa a conexao padrao vc pode deixar assim:
$conn = mysql_connect("localhost") or die("Impossvel conectar, ".mysql_error());
e para vc receber os dados da outra pagina use isso:

QUOTE
foreach ($_POST as $campo => $valor) { $$campo = $valor; }
muito mais pratico e nao importa o tanto de campos que vc tiver ele cria
a variavel com o nome do campo
toretto_PHP

28/04/2004 - 11:46

Ser Fbyo?
eu tentei soh com localhost e no foi...
tive q inserir pelo menos "",""
mas ta valendo...
Encrementou o script q passei...
Vlw! hehehe
Flw ae
Fabyo

28/04/2004 - 11:48

cara se vc tiver usando o padrao nao tem porque dar erro e funciona normal
s com localhost
felipeatto

28/04/2004 - 11:57

eu t conseguindo conectar soh com localhost, e naum tenho nenhum campo


autoincrement...
ah e a data naum pode ser a atual, tem q ser uma data definida pelo usurio..
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

6/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

mais alm eu vou implantar isso que vcs falaram pela segurana mas por enquanto eu
quero soh a data atual...
Fabyo

28/04/2004 - 12:05

QUOTE (toretto_PHP @ Apr 28 2004, 12:46 PM)


Ser Fbyo?
eu tentei soh com localhost e no foi...
tive q inserir pelo menos "",""
mas ta valendo...
Encrementou o script q passei...
Vlw! hehehe
Flw ae
Cara igual eu falei nao tem como errar se colocar s o localhost se vc
estiver usando a conexao padrao, e nao foi eu que inventei isso, isso
padrao do sistema se no seu nao funciona tem algo errado ai, mas se
nao quiser ver deixe do jeito que vc ta usando
Fabyo

28/04/2004 - 12:08

vc ta usando assim na sua pagina:

QUOTE
$datai2 = date("d/m/Y");

// insere a data atual

entao nao muda nada do que eu falei acima usa o comando now() em
vez do $datai2 que ele vai gravar no banco a data atual nao tem
segredo
Fabyo

28/04/2004 - 13:12

Ja que estamos falando de datas ai vai um script pra gerar o combo das datas
automaticamente em vez de vc ter que escrever tudo no dedo

QUOTE
<?
// 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";
}
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

7/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

echo "</select>";
?>
<?
// construindo o select do ms
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 = 2004; $i <= 2010; $i++)
echo "\t<option value=$i>$i</option>\n";
echo "</select>";
?>
E um script que verifica se a data valida, exemplo 31/02/04 nao existe
QUOTE

coloque isso na pagina que ira gravar os dados


include "valida_data.php";
if (!validar($dia, $mes, $ano)){
echo "<center><font color=red>Data Invlida :
$dia/$mes/$ano </font></center><br>
<a href=\"javascript:history.go(-1)\">
<center>Voltar</center></a>";
exit();
}
agora o script que verifica a data valida :
QUOTE
<?php
// funo usada para validar o ano
function validar($dia , $mes, $ano) {
if ( (($ano % 4) == 0) && ($mes == 2) && ($dia > 29) )
// se o ms for fevereiro e o ano for bissexto, dia no pode
// ser maior que 29
return 0;
else if ( (($ano % 4) > 0) && ($mes == 2) && ($dia > 28) )
// se o ms for fevereiro e o ano no for bissexto, dia no pode
// ser maior que 28
return 0;
else if( (($mes == 4) || ($mes == 6) || ($mes == 9) || ($mes ==
www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

8/9

16/06/12

Frum Script Brasil > Inserindo Data Em Mysql !

11) ) && ($dia == 31))


// se o ms for Abril, Junho, Setembro ou Novembro, dia no pode
ser 31
return 0;
else
return 1;
}

?>

Esta um a ve rso sim plificada de nosso conte do principal. Para ve r a ve rso com ple ta com m aiore s
inform ae s, form atao e im age ns, por favor clique aqui.
Invision Powe r Board 2001-2012 Invision Powe r Se rvice s, Inc.

www.scriptbrasil.com.br/forum/lofiversion/index.php/t21071.html

9/9

Você também pode gostar