Ir para conteúdo
Fórum Script Brasil
  • 0

(Resolvido) Não consigo gravar os dados na tabela !


WSoares9

Pergunta

Olá pessoal,

gostaria de uma grande ajuda dos feras desse forum. Seguinte:

Sou iniciante em php e mysql, instalei na minha maquina o XAMPP e sei q tudo está funcionando perfeitamente, pois, através do browser eu acesso o localhost" e o "PhpMyAdmim" e até já criei alguns bancos e tabelas. Acontece que quando executo o script "cadastrar.php" as informações não são gravadas na tabela. Segue abaixo os códigos para análise.

Desde já agradeço a atenção de todos.

Nome da tabela: "comentarios"

Campos:

Codigo: int(10) autoIncrement

Nome: varchar(60)

email: varchar(60)

data: datetime

comentario: text

**** cadastrar.html *****

<html>
<head>
<title>Cadastrar comentários</title>
<link href="estilo.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" name="form_cadastro" method="post" action="cadastrar.php">
<h4 id="form1 h4" align="center">Comentários</h4>
<p align="left">Seu nome: <input name="Nome" type="text" size="55" /></p>
<p align="left">Seu E_mail: <input name="email" type="text" size="50" /></p>
<p align="left">Comentário: <textarea name="comentario" rows="4" cols="40"> </textarea></p>   
<br />
<input type="submit" value="E n v i a r" align="left" />
<input align="right" type="reset" value="L i m p a r" />
</form>
</body>
</html>
**** cadastrar.php ****
<?php
//Captura as informações enviadas pelo formulário
$nome = $_POST['Nome'];
$email = $_POST['email'];
$data = date("d-m-Y");
$coment = $_POST['comentario'];

//Conecta ao Banco de Dados
include("msqlconfig.inc");

// Inserir os dados na tabela "comentarios"
$inserir = "INSERT INTO comentarios (Codigo,Nome,email,data,comentario)  VALUES('','$nome','$email','$data','$coment')";
mysql_query($inserir);
// Aqui os dados são mostrados na tela (só pra teste).
print $inserir;

//Grava as informações
//Contar o numero de Colunas afetas. Se for 1, a gravação foi efetuada

$num_linha = mysql_affected_rows();

// Aqui é mostrado na tela o nº 1 

print $num_linha;

if($num_linha == 1){

  // Aqui a mensagem é mostrada corretamente

   echo "Cadastro efetuado com sucesso<br>";
   // Link para a página anterior (também está sendo mostrado)

   echo "<a href='java script:history.back()'>Voltar</a>";
}

//Fecha a conexão. Aqui estava apresentando erro, não sei por quê
//mysql_close($banco);

?>
**** msqlconfig.inc ****
<?php 
//Mensagens de ERRO

$msg[0] = 'Falha na conexão com o Servidor SQL !';
$msg[1] = 'Não foi possível selecionar o Banco de dados !';

// Variáveis de conexão
$servidor = "localhost"; // Servidor Xampp
$usuario = "root"; // Usuário do MySql
$senha = "******"; //Senha do Usuário MySql
$banco = "teste"; // Localização/Nome do Banco de Dados

//Fazendo a conexão com o servidor MySql

$conecta = mysql_connect($servidor,$usuario,$senha) or die ($msg[0]); //conecta ao servidor
mysql_select_db($banco) or die ($msg[1]);// conecta ao Banco de dados

?>

Editado por *FIT*
Adicionar as tags [code]
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Olá pessoal !

Quero antes me desculpar pela minha ignorância. Na verdade os dados estavam sendo gravados sim.

O problema é q eu tinha duas tabelas "comentario" em pastas diferentes e eu estava verificando na tabela errada.

Mas agora eu percebi um probleminha (de verdade, rsrsrs). A data está sendo gravada dessa forma "0000-00-00 00:00:00".

Já tentei colocar assim:

$data = date('d/m/Y', strtotime("now"));

mas não adiantou. Como eu posso resolver isso?

Desde já agradeço a ajuda.

Editado por WSoares9
Link para o comentário
Compartilhar em outros sites

  • 0

Olá pessoal,

Consegui resolver o problema da data. Quebrei a cabeça com uma coisa tão simples (aprender sozinho é barra mesmo).

A quem interessar possa ai vai a solução:

No script "cadastrar.php", ao invés disso:

$data = date('d-m-y');

.

.

.

.

$inserir = "INSERT INTO comentarios (Codigo,Nome,email,data,comentario) VALUES('','$nome','$email','$data','$coment')";

troquei por isso:

$inserir = "INSERT INTO comentarios (Codigo,Nome,email,data,comentario) VALUES('','$nome','$email',now(),'$coment')";

sem precisar da variável "$data"

De qualquer forma, obrigado pela atenção

Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      652k
×
×
  • Criar Novo...