Jump to content


Photo

Login Invalido, Problemas No Select


  • Faça o login para participar
5 replies to this topic

#1 Rubens Garcia

Rubens Garcia

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo - SP

Posted 08/08/2011, 09:15

Bom dia pessoal, estou com problemas no meu select ele não está conseguindo capturar os valores recebidos das variaveis e usar no SELECT, ai com isso é redirecionado de volta para o login com a mensagem de login invalido.

Alguém pode me ajudar ? Segue código abaixo

<?php
$nick = $_POST['nick'];
$senha = $_POST['senha'];



//verifica se existe algum campo em branco caso tenha volta para a tela de login
if (!empty($_POST) && (empty($_POST['nick']) || empty($_POST['senha']))): 
?>

<script language="javascript">
alert('Por Favor digitar seu nick e sua senha de acesso !');
location.href='http://rubensgarcia.ueuo.com/login.php';
</script>

<?php
exit;
endif;

//conectando ao banco de dados 

$host='localhost';
$user='xxxxxx';
$pass='xxxxxxx';

$con=mysql_connect($host,$user,$pass);
if(!$con){
	die('Falha na conexão. Erro:' .mysql_error());
}

//selecionar banco de dados 
mysql_select_db('xxxxxxx')or trigger_error(mysql_error());


//verificando nick e senha no banco de dados 
$query_select=mysql_query("SELECT id, nick, senha FROM usuarios WHERE nick LIKE '%$nick%' AND senha LIKE '%$senha%' ativo LIKE 1");



if (mysql_num_rows($query_select) != 1)
{
?>

<script language="javascript">
alert('Login Invalido!');
location.href='http://rubensgarcia.ueuo.com/login.php';
</script>

<?php
} else {
// Salva os dados encontados na variável $resultado
$resultado = mysql_fetch_assoc($query_select);
// Se a sessão não existir, inicia uma
	    if (!isset($_SESSION)) session_start();
	 
	    // Salva os dados encontrados na sessão
	    $_SESSION['UsuarioID'] = $resultado['id'];
	    $_SESSION['UsuarioNome'] = $resultado['nome'];
	    $_SESSION['UsuarioNivel'] = $resultado['nivel'];
}

?>

Edição feita por: Rubens Garcia, 08/08/2011, 09:16.


#2 rsantos

rsantos

    Turista

  • Usuários
  • 54 posts
  • Sexo:Masculino

Posted 08/08/2011, 09:27

Existe algum motivo especial para estar usando 'LIKE'?

Tente assim para ver se funciona:

$query_select=mysql_query("SELECT id, nick, senha FROM usuarios WHERE nick = '$nick' AND senha = '$senha' AND ativo ='1'");


#3 DuuuuDuuuu

DuuuuDuuuu

    Turista

  • Usuários
  • 25 posts
  • Sexo:Masculino
  • Localidade:brasil

Posted 08/08/2011, 09:44

o rsantos ta certo
o LIKE é útil para efetuar buscas no BD
no caso de senhas, o correto é usar um pouco mais de sensibilidade
pra q no BD puxe exatamente oq vc quer, da uma olhada nesse link
http://dev.mysql.com...ensitivity.html

e tbm é bom diferenciar maiusculas de minusculas.


Só um complemento.

#4 Rubens Garcia

Rubens Garcia

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo - SP

Posted 08/08/2011, 12:52

Bom eu mudei o código e o SELECT, agora estou com problemas para redirecionar a página que simplesmente não vai


<?php
//Inicio a Sessão no inicio da página!!
session_start();
//Ultilize essa condição para que quando vir do FORM em um campo Hidden o php saber que esta existindo uma Acao = "Login" faça desta forma <input type="hidden" name="Acao=" value="Login"> e pronto!, Obs: isso dentro do FORMULARIO de login
if(isset($_POST['acao']) == "login"){
//Pegue os valores vindos de POST ou GET, no caso ultilizei POST.!
$nick = $_POST['nick'];
$senha = $_POST['senha'];


//conexão com banco de dados
$host='localhost';
$pass='';
$user='root';

$con=mysql_connect($host,$user,$pass);
if(!$con){
	die('Falha na conexão. Erro:' .mysql_error());
}

//selecionar banco de dados 
mysql_select_db('clube')or trigger_error(mysql_error());


//Faça a Query
$query_select=mysql_query("SELECT id, nick, nivel FROM usuarios WHERE nick='$nick' AND senha='$senha' AND ativo='1' LIMIT 1");
//Verifique se existe algum dado TRUE dentro do select
if(mysql_num_rows($query_select) >= 1)
{
        $resultado = mysql_fetch_assoc($query_select);
  
            // Salva os dados encontrados na sessão
            $_SESSION['UsuarioID'] = $resultado['id'];
            $_SESSION['UsuarioNick'] = $resultado['nick'];
            $_SESSION['UsuarioNivel'] = $resultado['nivel'];
						
?>
<script language="javascript">
alert('Login Efetuado!');
window.location.href= 'http://rubensgarcia.ueuo.com/adm.php';
</script>
<?php			 
}
else{
?>

<script language="javascript">
alert('Login Invalido!');
window.location.href= 'http://rubensgarcia.ueuo.com/login.php';
</script>
<?php 
        }//Finalizo o ELSE de não for válido os dados!

}//Chave do (isset($_POST['Acao'] == "Login"))

?>



#5 Srkupper

Srkupper

    Turista

  • Usuários
  • 55 posts
  • Sexo:Masculino
  • Localidade:Pinda Sp

Posted 08/08/2011, 20:36

Tenta assim, eu fiz um site de uma imobiliaria e de uma pizzaria com os cadastros tosdos com esse tipo de redirecionemento


if(mysql_num_rows($query_select) >= 1)
{
        $resultado = mysql_fetch_assoc($query_select);
  
            // Salva os dados encontrados na sessão
            $_SESSION['UsuarioID'] = $resultado['id'];
            $_SESSION['UsuarioNick'] = $resultado['nick'];
            $_SESSION['UsuarioNivel'] = $resultado['nivel'];
                                                
echo "<script language='javascript' type='text/javascript'> alert('Login Efetuado'); </script>";
echo "<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=*.php'>";
                   
}
else{

echo "<script language='javascript' type='text/javascript'> alert('Login Efetuado'); </script>";
echo "<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=*.php'>";

        }//Finalizo o ELSE de não for válido os dados!

}//Chave do (isset($_POST['Acao'] == "Login"))

?>

vlw.
se foi útil retribua =)

#6 Rubens Garcia

Rubens Garcia

    Novato no fórum

  • Usuários
  • 7 posts
  • Sexo:Não informado
  • Localidade:São Paulo - SP

Posted 16/08/2011, 09:51

Resolvi o problema, desculpem a demora em posta !
Segue código com problema resolvido

<?php

//iniciando uma sessão
session_start();


//Pegue os valores vindos de POST ou GET, no caso ultilizei POST.!
$nick = mysql_real_escape_string($_POST['nick']);
$senha = mysql_real_escape_string($_POST['senha']);


$_SESSION['nick'] = $nick;
$_SESSION['senha'] = $senha;

//conexão com banco de dados
$host='';
$pass='';
$user='';

mysql_connect($host,$user,$pass)or trigger_error(mysql_error());



//selecionar banco de dados 
mysql_select_db('tttttt')or trigger_error(mysql_error());


//Faça a Query
$query_select=mysql_query("SELECT nick,senha FROM usuarios WHERE nick LIKE '$nick' AND senha LIKE '$senha' AND ativo LIKE 1 LIMIT 1")or print (mysql_error());;

while($linha = mysql_fetch_array($query_select)){
$loginbanco = $linha["nick"];
$senhabanco = $linha["senha"];
}
if($loginbanco == $nick AND $senhabanco == $senha){
$_SESSION['nickbd']= $loginbanco;
$_SESSION['senhabd']= $senhabanco;

?>
<script language="javascript">
alert('Login Efetuado!');
window.location.href= 'ttttttttt.php';
</script>
<?php

}else{
?>

<script language="javascript">
alert('Login Invalido!');
window.location.href= 'tttt.php';
</script>
<?php 
        }//Finalizo o ELSE de não for válido os dados!

?>





1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq