Campo Date Vazio No Mysql
#1
Posted 12/01/2011, 14:39
Bom estou tentando gravar uma data com o campo vazio no mysql mais ele me retorna o seguinte erro: Incorrect date value: '' for column 'data_ent' at row 1
No BD o campo DATE está do tipo DATE, mais ele não é de preenchimento obrigatório e está NOT NULL.
O que devo fazer?
Não sei assinar... ehehehe
----------------------------------------------------------------------------
#2
Posted 12/01/2011, 15:17
#3
Posted 12/01/2011, 15:31
Não sei assinar... ehehehe
----------------------------------------------------------------------------
#4
Posted 12/01/2011, 16:19
#5
Posted 12/01/2011, 17:00
$id_cliente = anti_injection($_GET['id_cliente']);
$sql = "SELECT nome,cnpj FROM clientes WHERE id_cliente = '$id_cliente'";
$resultado = mysql_query($sql) or die ("Não foi possível realizar a consulta ao banco de dados");
if (!$resultado) {
echo "Nenhum registro encontrado...";
exit;
}
$dados = mysql_fetch_array($resultado);
$nome = $dados['nome'];
$cnpj = $dados['cnpj'];
if (isset($_POST['enviar'])) {
$nf = anti_injection($_POST['nf']);
$data_nf = $_POST['data_nf'];
$data_1 = gravaData($data_nf);
$mes = anti_injection($_POST['mes']);
$ano = anti_injection($_POST['ano']);
$valor_nf = ($_POST['valor_nf']);
$valor = str_replace(",",".",str_replace(".","",$valor_nf));
$obs_nf = anti_injection($_POST['obs_nf']);
$entregue = anti_injection($_POST['entregue']);
$data_ent = $_POST['data_ent'];
$data_2 = gravaData($data_ent);
if (empty($nf)) {
$erro_nf = 'O Número da Nota Fiscal deve ser informado!';
} else if (empty($data_nf)) {
$erro_data_nf = 'A Data da Nota Fiscal deve ser informada!';
} else if (empty($mes)) {
$erro_mes = 'O mês de referencia deve ser informado!';
} else if (empty($valor_nf)) {
$erro_valor = 'O Valor da Nota Fiscal deve ser informado!';
} else {
$Busca = mysql_query("SELECT nf FROM controlenf WHERE nf = '$nf'");
if (mysql_num_rows($Busca) == 0){
// Cria uma query MySQL - Inserção
$query = mysql_query("INSERT INTO controlenf (id_cliente, nf, data_nf, mes, ano, valor_nf, obs_nf, entregue, data_ent) VALUES ('$id_cliente', '$nf', '$data_1', '$mes', '$ano', '$valor', '$obs_nf', '$entregue', '$data_2')") or die (mysql_error());
exit;
echo '<script>alert("NOTA FISCAL CADASTRADA COM SUCESSO!!");location.href="nfs_lista.php?id_cliente='.$id_cliente.'"</script>';
} else {
$erro_nf2 = 'Essa Nota Fiscal já existe no Banco de Dados!';
}
}
}
Não sei assinar... ehehehe
----------------------------------------------------------------------------
#6
Posted 12/01/2011, 21:43
Como o campo DATE não é uma string, ele nao vai aceitar valores em branco.
De qualquer forma, o campo está como "NOT NULL", ou seja, não vai aceitar valores em branco.
O que você pode fazer é:
- Insira a data "0000-00-00" ao invez de "branco"
- Ou então mude o campo para NULL, e insira o valor NULL caso não exista valor na variavel
0 user(s) are reading this topic
0 membro(s), 0 visitante(s) e 0 membros anônimo(s)