NCS_One Posted March 15, 2006 at 04:35 PM Report Share #18412 Posted March 15, 2006 at 04:35 PM Ois Sou novato nisto de php e resolvi começar por tentar fazer um simples login, o login funciona e tb consigo inserir um novo user na base de dados, aqui vao os 2 ficheiros : Ficheiro - Index.php <html> <body> <title>Index</title> </body> <body leftmargin="0" topmargin="0" marginwidth="0" marginheigh="0"> <table width="200" height="200" cellspacing="0" cellpadding="0" border="0" bgcolor="#CCCCCC"> <tr> <td align="center"> <span>Login</span> <form action="Login.php" method="POST"> <span>Nome :</span><input type="text" value="" name="Nome" size="20"> <span>Pass :</span><input type="password" value="" name="Pass" size="20"> <input type="submit" value="Login"> </form> <a href="Registar.php">Registar</a> </td> </tr> </table> </body> </html> Ficheiro - Login.php <? $Nome=$_POST["Nome"]; $Password=$_POST["Pass"]; $Password=md5($Password); $Conectar = mysql_connect("localhost", "root", "") Or Die("Falhou ligar ah base de dados."); $bdd = mysql_select_db("BaseDados1", $Conectar) Or Die("Falhou, base de dados desconhecida."); $Pesquisa = "Select Nome, Pass From utilizador Where nome='$Nome';"; $Resultado = mysql_query($Pesquisa); $Num = mysql_num_rows($Resultado); if ($Num!=0) { list($Nome, $Pass) = @ mysql_fetch_row($Resultado); if ($Password == $Pass) { Header("Location : http://www.sapo.pt/"); } else echo "Password errada."; } else echo "Utilizador nao existe."; mysql_close($Conectar); ?> Agora tenho 2 perguntas - 1ª - Se o utilizador nao existir ou a password estiver errada como faço um 'alert' com a respectiva mensagem na pagina Index.php nao na Login.php ? 2ª - Se o utilizador nao existir ou a password estiver errada como faço para inserir um novo elemento com a respectiva mensagem dentro do 'td'(onde esta a 'form') da 'table' ? Desde ja agradeço toda a ajuda que poderem dar. Se a vida te voltar as costas aproveita e apalpa-lhe o cu. Link to comment Share on other sites More sharing options...
Blue_Acid Posted March 15, 2006 at 04:56 PM Report Share #18417 Posted March 15, 2006 at 04:56 PM BEM vou tentar responder a isso, pk eu tb tenho andado de volta destas coisas, então eu fiz assim: quando ele verifica que o utilizador não existe, fazes um header e na minha situação, fiz no index.php //--- defines uma var msg vazia no inicio do body ou na tag head <? $msg=" "; ?> //----- metes o codigo todo do form ----- //---- defines um local para dar a msg de erro e metes: <? $msg = $_GET['msg']; echo $msg; ?> no Login.php //--- o codigo todo da verificação //--- na parte de utilizador não existe header(Location: index.php?msg=Erro de Login); Não se será a melhor maneira, mas funciona ... um abraço 😕 SIGNIFICADOS: WWW: Wait,wait,wait... HTML: Hoje Ta Mais Lento.KEYBOARD: Dispositivo usado para entrada de erros no Computador. Link to comment Share on other sites More sharing options...
NCS_One Posted March 15, 2006 at 08:30 PM Author Report Share #18456 Posted March 15, 2006 at 08:30 PM Ois Obrigado pela resposta mas alguem sabe de alguma maneira melhor de o fazer eh k nesta a msg vai no url e eu nao keria isso. Obrigado. Se a vida te voltar as costas aproveita e apalpa-lhe o cu. Link to comment Share on other sites More sharing options...
satanuke Posted March 15, 2006 at 09:11 PM Report Share #18464 Posted March 15, 2006 at 09:11 PM Podes usar a sessão para guardar a mensagem. login.php <?php //resumir a sessão session_start(); $Nome=$_POST["Nome"]; $Password=$_POST["Pass"]; $Password=md5($Password); $Conectar = mysql_connect("localhost", "root", "") Or Die("Falhou ligar ah base de dados."); $bdd = mysql_select_db("BaseDados1", $Conectar) Or Die("Falhou, base de dados desconhecida."); $Pesquisa = "Select Nome, Pass From utilizador Where nome='$Nome';"; $Resultado = mysql_query($Pesquisa); $Num = mysql_num_rows($Resultado); if ($Num!=0) { list($Nome, $Pass) = @ mysql_fetch_row($Resultado); if ($Password == $Pass) { Header("Location : http://www.sapo.pt/"); } else { $_SESSION['msg'] = "Password errada."; Header("Location : index.php"); } } else { $_SESSION['msg'] = "Utilizador não existe!"; Header("Location : index.php"); } mysql_close($Conectar); ?> index.php <?php //iniciar a sessão session_start(); ?> <html> <title>Index</title> <body leftmargin="0" topmargin="0" marginwidth="0" marginheigh="0"> <table width="200" height="200" cellspacing="0" cellpadding="0" border="0" bgcolor="#CCCCCC"> <?php if (isset($_SESSION['msg'])){ ?> <tr> <td>Erro : <?=$_SESSION['msg']?></td> </tr> <?php } ?> <tr> <td align="center"> <span>Login</span> <form action="Login.php" method="POST"> <span>Nome :</span><input type="text" value="" name="Nome" size="20"> <span>Pass :</span><input type="password" value="" name="Pass" size="20"> <input type="submit" value="Login"> </form> <a href="Registar.php">Registar</a> </td> </tr> </table> </body> </html> tek.readers blog Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now