Jump to content


Photo

Condição Não Funciona


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

#1 _AFRICANO_

_AFRICANO_

    Normal

  • Usuários
  • 95 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 06/01/2012, 10:34

Boa Tarde WMO, (y) estou eu aqui de novo com um problema para tentar resolver. ;)

Bom, vou explicar o funcionamento,
a pagina Index envia dois valores para logar.php(login e senha),
desses valores o logar.php faz um select no banco de dados para verificar se existe o login e a senha,
ai que vem o problema fiz o select, e fiz a condição
if ($num_logar == 0){
   echo "Login ou senha invalido.";
   echo "<br><a href='javascript:window.history.go(-1)'>Clique aqui para voltar.</a>";   
  
}else{
   //Cria a sessão demonstrador
	if(isset($_POST['login'])){
		$pega_nome_dem = $_POST['login'];
		$_SESSION['session_dem'] = $pega_nome_dem;
		echo "<script language='javascript'>
			 document.location = 'demonstrador.php'
			 </script>";
	}
}
:wacko:

Estáva funcionando 100% quando era em MySQl (y) agora tive que reescrever em Firebird e nao funciona,
Ocorre o seguinte ERRO~> Mesmo digitando o login e a senha coretamene, e aparece a mensagem login ou senha invalido.

Abaixo segue logar.php(codigo completo)

<?php
	session_start(); //Inicia sessão
	include("config.php");


$login = $_POST['login'];
$senha = $_POST['senha'];

/* Verifica se existe usuario, o segredo ta aqui quando ele procupa uma 
linha q contenha o login e a senha digitada */

$sql_logar = "SELECT * FROM tab_usuario_web WHERE login_fun = '$login' and senha_fun = '$senha'";
$exe_logar = ibase_query($sql_connect,$sql_logar) or die (ibase_errmsg());
$fet_logar = ibase_fetch_assoc($exe_logar);
$num_logar = ibase_fetch_object($exe_logar);

$codigo_dem = $fet_logar["cod_dem"];
$_SESSION['cod_dem'] = $codigo_dem;
$senha_db = $fet_logar['senha_fun'];

///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  
//Verifica se existe uma linha com o login e a senha digitado.
if ($num_logar == 0){
   echo "Login ou senha invalido.";
   echo "<br><a href='javascript:window.history.go(-1)'>Clique aqui para voltar.</a>";   
  
}else{
   //Cria a sessão demonstrador
	if(isset($_POST['login'])){
		$pega_nome_dem = $_POST['login'];
		$_SESSION['session_dem'] = $pega_nome_dem;
		echo "<script language='javascript'>
			 document.location = 'demonstrador.php'
			 </script>";
	}
}
?>
:unsure: Firebird éé muito complicado, :ph34r:

Obrigado pela atenção, abraços
Quem me ajudar ~> (+)
Te ajudei de alguma forma??
Então agradeça é rapido, prático e gratuito,
é só clicar no
Posted Image
C a i q u e

#2 d1eg0.

d1eg0.

    Normal

  • Usuários
  • 63 posts
  • Sexo:Masculino

Posted 06/01/2012, 15:26

Amigo da um "ECHO" no teu SQL que faz a consulta e posta ai. Pode ser algo na concatenação

#3 _AFRICANO_

_AFRICANO_

    Normal

  • Usuários
  • 95 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 06/01/2012, 16:24

Amigo da um "ECHO" no teu SQL que faz a consulta e posta ai. Pode ser algo na concatenação

Opá obrigado pela atenção, bom eoo fiz assim:

<?php
	session_start(); //Inicia sessão
?>	
	<table width="500" border="0" align="center">
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center">
    <td>&nbsp;</td>
  </tr>
  <tr align="center">
    <td><?php
	
	include("config.php");


$login = $_POST['login'];
$senha = $_POST['senha'];

/* Verifica se existe usuario, o segredo ta aqui quando ele procupa uma 
linha q contenha o login e a senha digitada */

$sql_logar = "SELECT * FROM TAB_USUARIO_WEB WHERE LOGIN_FUN = '$login' and SENHA_FUN = '$senha'";
$exe_logar = ibase_query($sql_connect,$sql_logar) or die (ibase_errmsg());
$fet_logar = ibase_fetch_assoc($exe_logar);
$num_logar = ibase_fetch_row($exe_logar);

$codigo_dem = $fet_logar["COD_DEM"];
$_SESSION['cod_dem'] = $codigo_dem;
//$login_db = $fet_logar['LOGIN_FUN'];
//$senha_db = $fet_logar['SENHA_FUN'];
echo "$num_logar<br />$sql_logar<br />$exe_logar<br />";
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  
//Verifica se existe uma linha com o login e a senha digitado.
if ($login_bd != $login){
   echo "Login invalido";
   echo "<br><a href='javascript:window.history.go(-1)'>Clique aqui para voltar.</a>";   
  
}elseif ($senha_bd != $senha){
   echo "senha invalida";
   echo "<br><a href='javascript:window.history.go(-1)'>Clique aqui para voltar.</a>";   
  
}else{
   //Cria a sessão demonstrador
	if(isset($_POST['login'])){
		$pega_nome_dem = $_POST['login'];
		$_SESSION['session_dem'] = $pega_nome_dem;
		echo "<script language='javascript'>
			 document.location = 'demonstrador.php'
			 </script>";
	}
}
?></td>
  </tr>
</table>


e Deu isso no resultado:

 
 
 
 

SELECT * FROM TAB_USUARIO_WEB WHERE LOGIN_FUN = 'DEMONSTRADOR' and SENHA_FUN = '123'
Resource id #4
Login invalido
Clique aqui para voltar.

Obrigado.. (y)
Te ajudei de alguma forma??
Então agradeça é rapido, prático e gratuito,
é só clicar no
Posted Image
C a i q u e

#4 shayllis

shayllis

    12 Horas

  • Usuários
  • 152 posts
  • Sexo:Masculino
  • Localidade:Barueri - SP
  • Interesses:PHP, MySQL, ASP.NET C# e VB, DreamWeaver, VisualStudio, JavaScript

Posted 07/01/2012, 15:20

O problema aparentemente está no seu IF
tenta fazer assim:
$login_db = $fet_logar['LOGIN_FUN'];
$senha_db = $fet_logar['SENHA_FUN'];
if($login_db != ""){
//Usuário logado
}
else{
//Usuário Deslogado
}

#5 _AFRICANO_

_AFRICANO_

    Normal

  • Usuários
  • 95 posts
  • Sexo:Masculino
  • Localidade:São Paulo

Posted 09/01/2012, 07:56

O problema aparentemente está no seu IF
tenta fazer assim:
$login_db = $fet_logar['LOGIN_FUN'];
$senha_db = $fet_logar['SENHA_FUN'];
if($login_db != ""){
//Usuário logado
}
else{
//Usuário Deslogado
}


Vlw Amigo, era isso mesmo que esta errado, agora está funcionando direitinho Obrigado...
Te ajudei de alguma forma??
Então agradeça é rapido, prático e gratuito,
é só clicar no
Posted Image
C a i q u e




0 user(s) are reading this topic

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

IPB Skin By Virteq