Problema para gravar dados do formulário php/html no mysql do cpanel

HTML

MySQL

PHP

09/05/2017

Sou iniciante nisso de programação web, então estou meio perdida.
Criei um formulário bem simples para testes, até ai ok.
Quando preencho e envio, ele da confirmação de ter gravado os registros no bd, mas quando vou la no bd, não tem nada gravado... eu não consigo ver onde pode estar o erro, me ajudem!

teste.php
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>
 
<body>
<?php 
 
$host= 'localhost';
$bd= 'nome do meu bd"';
$senhabd= 'minha senha do cpanel';
 
$userbd = $bd; 
 
 
// RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
$ident	= $_POST ["ident"];		
$contato	= $_POST ["contato"];	

//Gravando no banco de dados !
 
//conectando com o localhost - mysql
$conexao = mysql_connect($host,$bd, $senhabd);
if (!$conexao)
	die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados
$banco = mysql_select_db($bd,$conexao);
if (!$banco)
	die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());
 
 
 
$query = "INSERT INTO `Contato` ( 'ident' , 'contato' ) 
VALUES ('$ident', '$contato')";
 
mysql_query($query,$conexao);
 
echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";
?> 
</body>
</html>


teste.html
<!DOCTYPE html>
<html >
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>CADASTRO</title>
<style type="text/css">
<!--
.style1 {
	color: #FF0000;
	font-size: x-small;
}
.style3 {color: #0000FF; font-size: x-small; }
-->
</style>
 
</head>
 
<body>
<form id="cadastro" name="cadastro" method="post" action="teste.php">
  <table width="625" border="0">
    <tr>
      <td width="69">Nome:</td>
      <td width="546"><input name="ident" type="text" id="ident" size="70" maxlength="60" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td width="69">Contato:</td>
      <td width="546"><input name="contato" type="text" id="contato" size="70" maxlength="60" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td colspan="2"><p>
        <input name="cadastrar" type="submit" id="cadastrar" value="Concluir meu Cadastro!" /> 
        <br/>
          <input name="limpar" type="reset" id="limpar" value="Limpar Campos preenchidos!" />
          <br/>
      </td>
    </tr>
  </table>
</form>
</body>
</html>
Bepe

Bepe

Curtidas 0

Melhor post

Wilson Neto

Wilson Neto

09/05/2017

Boa noite,
Quando preencho e envio, ele da confirmação de ter gravado os registros no bd, mas quando vou la no bd, não tem nada gravado... eu não consigo ver onde pode estar o erro, me ajudem!


Basicamente isso acontece porque nesse trecho:

$query = "INSERT INTO `Contato` ( 'ident' , 'contato' ) 
VALUES ('$ident', '$contato')";

mysql_query($query,$conexao);

echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";


Não há tratamento, ou seja, poderá falhar e mesmo assim a mensagem ( de "sucesso") será exibida.


mysql_query();


Se falhar retorna "FALSE", logo você pode fazer assim:

$result = mysql_query($query,$conexao);
if (!$result) {
//Irá apresentar qual o erro ocorreu ao executar a query
    die("Erro: " . mysql_error());
}else{
  echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";
}


Sugiro também que verifique a versão do PHP
a função "mysql_query()" foi depreciada a partir da versão: PHP 5.5.0 e removida na versão 7 e foi recomendado usar "mysqli_" ou "PDO" .

E habiliar a visualização de erros do php: "display_errors", poderá ajudar a compreender caso tenha algum problema.

Segue a doc para possíveis dúvidas:
Mysqli

PDO


Forte abraço!
GOSTEI 2

Mais Respostas

Bepe

Bepe

09/05/2017

Obrigada. Não sabia disso da função mysql_query, a versão que estava usando do php é 5.5.
Eu havia feito o código com tratamento mas fui simplificando até conseguir perceber onde estava o erro ( não adiantou rs).

E agora da um erro de "Warning: mysqli_connect(): Invalid date.timezone value ''UTC-3'', we selected the timezone ''UTC'' for now. in /home/meuususario/public_html/teste.php on line 25" e outro de conexão que com banco pq não tenho certeza se o host está correto "Warning: mysqli_connect(): Invalid date.timezone value ''UTC-3'', we selected the timezone ''UTC'' for now. in /home/meuususario/public_html/teste.php on line 25

Warning: mysqli_connect(): (HY000/1045): Access denied for user ''meuususario''@''localhost'' (using password: YES) in /home/meuususario/public_html/teste.php on line 25
Erro de conexão com localhost, o seguinte erro ocorreu ->".

Vou ver aqui o que está errado.
GOSTEI 0
Wilson Neto

Wilson Neto

09/05/2017

Obrigada. Não sabia disso da função mysql_query, a versão que estava usando do php é 5.5.
Eu havia feito o código com tratamento mas fui simplificando até conseguir perceber onde estava o erro ( não adiantou rs).

E agora da um erro de "Warning: mysqli_connect(): Invalid date.timezone value ''UTC-3'', we selected the timezone ''UTC'' for now. in /home/meuususario/public_html/teste.php on line 25" e outro de conexão que com banco pq não tenho certeza se o host está correto "Warning: mysqli_connect(): Invalid date.timezone value ''UTC-3'', we selected the timezone ''UTC'' for now. in /home/meuususario/public_html/teste.php on line 25

Warning: mysqli_connect(): (HY000/1045): Access denied for user ''meuususario''@''localhost'' (using password: YES) in /home/meuususario/public_html/teste.php on line 25
Erro de conexão com localhost, o seguinte erro ocorreu ->".

Vou ver aqui o que está errado.


Bom basicamente são "apenas" Warnings mas para remover o primerio acredito que essa linha deve resolver:
date_default_timezone_set('America/Sao_Paulo');


Doc: Default Timezone.

Sobre o segundo Warning, sei que existem hospedagens que você não conecta por localhost, eu particularmente utilizo a hospedagem da Umbler e lá não rola localhost. Eu posso estar enganado, mas li há um tempo atrás que Uolhost também não conecta por localhost.
Talvez alguns desses dados possam ajudar em algo. :)

Forte abraço!
GOSTEI 0
POSTAR