Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal estou desenvolvendo uma aplicação em PHP, a qual contém um sistema de login.
Pois bem, layout criado, conexão também está criada, mas, a principal dúvida é a seguinte:
1. Quando informo nome, sobrenome, e-mail, senha e sexo do usuário e clico no botão cadastrar apresentar o seguinte erro:
Notice: Undefined variable: login in C:\xampp\htdocs\www\enviar_cadastro.php on line 7
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\www\enviar_cadastro.php on line 8
Notice: Undefined variable: login in C:\xampp\htdocs\www\enviar_cadastro.php on line 14
Notice: Undefined variable: errors in C:\xampp\htdocs\www\enviar_cadastro.php on line 15
Notice: Undefined variable: senha in C:\xampp\htdocs\www\enviar_cadastro.php on line 18
Notice: Undefined variable: senha2 in C:\xampp\htdocs\www\enviar_cadastro.php on line 22
Notice: Undefined variable: senha in C:\xampp\htdocs\www\enviar_cadastro.php on line 22
Observação: Galera, eu criei na mesma página o cadastro e o login.
Quando tendo entrar pelo login com os mesmos dados cadastrados pelo próprio phmyadmin apresenta outros erros:
Notice: Undefined variable: login in C:\xampp\htdocs\www\confirmar_login.php on line 8
Notice: Undefined variable: senha in C:\xampp\htdocs\www\confirmar_login.php on line 8
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\www\confirmar_login.php on line 9
Login ou senha inválidos.
Se alguém puder me ajudar, fico grato!
:yes:
Vejam os códigos:
confirmar_login.php
<?
include "config.php"; //inclui o arquivo de configurações
$db = mysql_connect ($host, $login_db, $senha_db); //conecta ao mysql
$basedados = mysql_select_db($database); //conecta a base de dados
$confirmacao = mysql_query("SELECT * FROM $tabela WHERE login = '$login' AND senha = '$senha'", $db); //verifica se o login e a senha conferem
$contagem = mysql_num_rows($confirmacao); //traz o resultado da pesquisa acima
if ( $contagem == 1 ) {
setcookie ("login", $login); //grava o cookie com o login
setcookie ("senha", $senha); //grava o cookie com a senha
echo "Usuário logado."; //se a senha digitada está correta, mostra a mensagem
} else {
echo "Login ou senha inválidos. <a href=java script:history.go(-1)>Clique aqui para voltar.</a>"; //se a senha está incorreta mostra essa mensagem
}
?>
enviar_cadastro.php
<?
include "config.php"; //aqui inserimos as váriaveis da página de configuração
$db = mysql_connect ($host, $login_db, $senha_db); //conectamos ao mysql
$basedados = mysql_select_db($database); //selecionamos o database escolhido
$pesquisar = mysql_query("SELECT * FROM $tabela WHERE login = '$login'", $db); //conferimos se o login escolhido já não foi cadastrado
$contagem = mysql_num_rows($pesquisar); //traz o resultado da consulta acima
//Variáveis recebidas do formulário
$nome = $_POST['nome'];
$login = $_POST['login'];
$senha = $_POST['senha'];
$senha2 = $_POST['senha2'];
$email = $_POST['email'];
if ( $contagem == 1 ) {
$errors .= "Login escolhido já cadastrado.<br>"; //se o login já existir, ele adiciona o erro
}
if ( $login == "" ) {
$errors .= "Você não digitou um login<br>"; //confere se o campo login não ficou vazio
}
if ( $senha == "" ) {
$errors .= "Você não digitou uma senha<br>"; //confere se o campo senha não ficou vazio
}
if ( $senha != $senha2 ) {
$errors .= "Você digitou 2 senhas diferentes.<br>"; //adiciona o erro caso o usuário digitou 2 senhas diferentes
}
if ( $errors == "" ) { //checa se houve ou não erros no cadastro
$cadastrar = mysql_query("INSERT INTO `$tabela` (nome, login, senha, email)
VALUES ('$nome','$login','$senha','$email')
", $db); //insere os campos na tabela
if ( $cadastrar == 1 ) {
echo "<div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><br><br><br>Cadastro com sucesso.</font></div>"; //se cadastrou com sucesso o usuário aparece essa mensagem
} else {
echo "<div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif><br><br><br>Ocorreu um erro no servidor ao tentar se cadastrar.</font></div>"; //caso houver um erro quanto as configurações aparece essa mensagem
}
} else {
echo "<div align=center><font size=2 face=Verdana, Arial, Helvetica, sans-serif>Ocorreu os seguintes erros ao tentar se cadastrar:<br><br>$errors</font></div>"; //mostra os erros do usuário, caso houver
}
?>
Login.php
<html>
<head>
<title>Forteacher.me</title>
<?php include 'meta.php'; ?>
</head>
<body>
<?php include 'top.php'; ?>
<?php //PAGINA ?>
<div id="page-login">
<?php //CENTER ?>
<div class="center-login">
<?php //LEFT ?>
<form name="cadastrar" method="post" action="enviar_cadastro.php">
<div class="left-login">
<div class="description"></div>
<div class="good">
<div class="goodlogin"><label type="goodlogin">Bem-vindo ao Forteacher.me</label></div>
<div class="text-login">
<label type="text-login">Encontre as melhores respostas para suas perguntas, com as pessoas que entendem do assunto.</label>
</div>
<div class="login-inscreva"><label type="login">Cadastre-se</label></div>
<div class="login-cadastro-name">
<input type="name" name="nome" id="nome" placeholder="Seu Nome"/> <input type="name" name="sobrenome" id="sobrenome" placeholder="Login"/>
</div>
<div class="login-cadastro">
<input type="email" name="email" id="email" placeholder="Seu E-mail"/>
</div>
<div class="login-cadastro">
<input type="password" name="senha" id="senha" placeholder="Insira a Senha"/>
</div>
<div class="login-cadastro">
<input type="password" name="senha2" id="senha2" placeholder="Insira a senha novamente"/>
</div>
<div class="login-sexo">
<input type="radio" name="sexo"/><label type="sexo"> Femenino</label>
<input type="radio" name="sexo"/><label type="sexo"> Masculino</label>
</div>
<div class="botao-cadastrar">
<input type="submit" name="enviar" id="enviar" value="Inscrever-se"/>
<div class="esp"></div>
<div class="termos">
<label type="rodape-login-description">Ao clicar em <spam>cadastrar-se</spam>, você está concordando com todos os termos e a política de privacidade do Forteacher.me.</label>
</div>
</div>
</div>
</div>
</form>
<form name="login" method="post" action="confirmar_login.php">
<div class="post_content-login"><div class="espaco-login"></div>
<div class="post-login"><label>Login </label><input type="text" name="email" id="email" placeholder="Login"/><br /><br />
<label>Senha </label><input type="password" name="senha" id="senha" placeholder="Senha"/> <br /><br />
<input type="checkbox" name="login" value="Lembrar-me da senha" /><label type="lembrar-senha"> Lembrar-me</label>
<label> - </label><a href="login.php" class="link-login-password">Esqueci a senha</a>
<div class="botao-login"><input type="submit" name="entrar" value="Entrar" id="entrar"/></div>
<div class="espac"></div>
<div class="rodape-login">
<label type="rodape-login-description">© Copyright 2013 Forteacher.me. Todos os direitos reservados.</label>
</div>
</div>
</div>
</form>
</div>
</div>
</body>
</html>Carregando comentários...