Jump to content

[RESOLVIDO]Problema a inserir valores de uma form em mysql e a ler de mysql


pedrosorio
 Share

Recommended Posts

Olá a todos. Estou a ter um problema na inserção de valores de uma form na base de dados. Consigo inserir se usar strings no código, mas a partir da form não.

Form:

<form action="registar.php" method="post">
<table>
<tr><td>Nick:</td><td> <input type="text" name="Nick" /></td></tr>
<tr><td>Nome:</td><td> <input type="text" name="Nome" /></td></tr>
<tr><td>Apelido:</td><td> <input type="text" name="Apelido" /></td></tr>
<tr><td>Mail: </td><td><input type="text" name="Mail" /></td></tr>
<tr><td>Password: </td><td><input type="password" name="Pass" /></td></tr>
<tr><td>Confirm Password: </td><td><input type="password" name="Passc" /></td></tr>
</table>
<input type="submit" />
</form>

$pass=md5($_POST[Pass]);
$query="INSERT INTO pessoa (Nick, Nome, Apelido, Mail, Pass) VALUES ('$_POST[Nick]','$_POST[Nome]','$_POST[Apelido]','$_POST[$Mail]','$pass'))";
if (mysql_query($query,$con));
	{
	echo 'Registado com sucesso!!!</br></br>Clica <a href="login.html">AQUI</a> para fazer login.';
	}
}

Sim, antes faço a ligação e escolho a base de dados correcta. O problema está mesmo em enviar os dados com as variáveis a partir da form.

Obrigado pela atenção.

Não respondo a dúvidas por mensagem.

Link to comment
Share on other sites

$pass=md5($_POST[Pass]);
$query="INSERT INTO pessoa (Nick, Nome, Apelido, Mail, Pass) VALUES ('$_POST[Nick]','$_POST[Nome]','$_POST[Apelido]','$_POST[$Mail]','$pass'))";
if (mysql_query($query,$con));
	{
	echo 'Registado com sucesso!!!</br></br>Clica <a href="login.html">AQUI</a> para fazer login.';
	}
}

Não sei se reparas-te mas o tu não tens aspas no nome do campo post. Experimenta assim:

$query='INSERT INTO pessoa (Nick, Nome, Apelido, Mail, Pass) VALUES
('.$_POST['Nick'].','.$_POST['Nome'].','.$_POST['Apelido'].','.$_POST['Mail'].','.$pass.')';

Edit: Tens uma ")" a mais no fim.

Link to comment
Share on other sites

Ok, agora o problema é outro. O login não funciona porque a query à base de dados não funciona. Tenho esta query:

$query="SELECT * FROM pessoa WHERE Nick = '$_POST[Nick]'";
$result=mysql_query($query,$con);

Não respondo a dúvidas por mensagem.

Link to comment
Share on other sites

Tens a certeza que o nome do campo na tabela é Nick?

Dá-te algum erro? O_o

As queries não estão a dar erro nenhum. Acontece que a variável $result não fica com nenhum valor, ou seja, quando faço echo aparece-me "Resource id #2".

Não respondo a dúvidas por mensagem.

Link to comment
Share on other sites

Ihhh Obrigado 😄

Desculpa lá ter estado a fazer-te perder tempo com uma coisa destas... Estava perfeitamente convencido que a query devolvia uma array, mas é preciso sacar os valores do campos com o mysql_result, claro... Que erro mais noob...

Obrigadão 😄

Não respondo a dúvidas por mensagem.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.