Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia(T, N)
Tenho um exercício básico e Já pesquisei em vários lugares, já copiei e colei os códigos identicos, já refiz, e refiz.
Mas nunca funciona...> <, Espero que alguém possa me orientar o/.
Preciso apenas inserir os dados do formulário no banco.
Obrigado XD !
Um banco de dados com nome de: "teste"
Uma tabela com nome de: "tb_infouser"
Com as colunas: "id", int, auto increment, primary
tbNome, varchar, 30
tbIdade, varchar, 3
tbCidade, varchar, 30
Uma página Index com formulario simples
<?php
include("conex.php");
?>
<form name"formInfoUser" method="POST" action="inserir.php">
Nome:<input type="text" name="nomeUser" />
Idade:<input type="text" name="idadeUser" />
Cidade:<input type="text" name="cidadeUser" />
<input type="submit" value="Enviar" />
</form>
Uma página de conexão com banco
<?php
$hostBanco = "localhost";
$userBanco = "root";
$userSenha = " ";
$banco = "teste";
$con = mysql_connect($hostBanco, $userBanco, $userSenha);
if($con){
mysql_select_db($banco);
//echo "Banco encontrado";
}else{
echo " Banco não encontrado";
}
$tituloPagina = "Titulo na Pagina Conex";
?>
Uma página para inserir os dados
<?php
include("conex.php");
$nome = $_POST['nomeUser'];
$idade = $_POST['idadeUser'];
$cidade = $_POST['cidadeUser'];
$query = mysql_query("INSERT INTO tb_infouser(
`id`, `tbNome`, `tbIdade`, `tbCidade`) VALUES (` `, `$nome`, `$idade`, `$cidade`) ");
?>
<html>
<head>
<title><?php echo $tituloPagina; ?></title>
</head>
<body>
<h2> </h2>
</body>
</html>aparentemente, o código está ok; sugestões:
1. habilite as mensagens de erro;
2. veja se instalou tudo direito (sabe como fazer esses testes?);
3. verifique se instalou a extensão ao MySQL;
4. se a versão do PHP é 5.5 ou superior,
provavelmente as funções mysql.* estarão obsoletas ou desativadas;
ai seria melhor PDO; verifique se essa extensão está instalada.
+ dicas d PDO:
http://www.rafaelwendel.com/2011/12/tutorial-pdo-php-data-object/
http://www.devmedia.com.br/introducao-ao-php-pdo/24973
obs: pode remover o código PHP da pag do formulário, ok?
Obrigado pelas dicas Carlos. Alterei certinho, e já havia tentado e tentei novamente sem o id. Porem continua não funcionando. Vou tentar encontrar alguma forma de criar uma condição para saber se realmente foi adicionado, se não retornar algum erro.
>
O campo id é auto increment, então deixe de fora na hora da inserção. Use aspas nos valores, apóstrofes se usa apenas (não é obrigatório) nos nomes dos campos.
_________________________________________________________________________________________
Obrigado pelas dicas Fernando, irei ler com atenção esses dois Links
>
aparentemente, o código está ok; sugestões:
1. habilite as mensagens de erro;
2. veja se instalou tudo direito (sabe como fazer esses testes?);
3. verifique se instalou a extensão ao MySQL;
4. se a versão do PHP é 5.5 ou superior,
provavelmente as funções mysql.* estarão obsoletas ou desativadas;
ai seria melhor PDO; verifique se essa extensão está instalada.
+ dicas d PDO:
http://www.rafaelwen...hp-data-object/
http://www.devmedia....o-php-pdo/24973
obs: pode remover o código PHP da pag do formulário, ok?
As versões e funções estão, ok. Tudo habilitado. Até por que outras aplicações funcionam. E por dúvidas, testei em uma hospedagem grátis e também não funcionou. Vou fuçando por aqui o//
Comece configurando seu código para exibir TODAS as mensagens de erro, adicionando este código à primeira linha do script.
<?php
ini_set( 'display_errors', true );
error_reporting( E_ALL );Olá.. testei seu código e tb não deu certo, ai lembrei q qdo estava começando
tb tentei c/ espaço em branco no lugar da senha e tb não consegui conexão,
então agora peguei seu código de conexão e deixei assim:
<?php
$hostBanco = "localhost";
$userBanco = "root";
$userSenha = "";
$banco = "teste";
$con = mysql_connect($hostBanco, $userBanco, $userSenha);
if($con){
$banco=mysql_select_db($banco);
echo "Banco encontrado";
}else{
echo " Banco não encontrado";
}
$tituloPagina = "Titulo na Pagina Conex";
echo $tituloPagina;
?>
e agora está ok, tente ahe...
Bom, simplesmente deletei tudo(de novo) e refiz (igual a [quase tudo] rsrs aí de cima). E então funcionou... parece existir algumas bruxaria. Obrigado pelas respostas, todas foram de bom proveito o// !!!
O campo id é auto increment, então deixe de fora na hora da inserção. Use aspas nos valores, apóstrofes se usa apenas (não é obrigatório) nos nomes dos campos.
INSERT INTO tb_infouser (
tbNome,tbIdade,tbCidade) VALUES ( '$nome', '$idade', '$cidade' )