Ir para conteúdo
Fórum Script Brasil
  • 0

Variável Não Definida


milka

Pergunta

4 respostass a esta questão

Posts Recomendados

  • 0

Poste seu código para vermos onde está o erro.

[]'s

controle.php

<?php

ob_start();
session_start();

     //Verifica se existe o arquivo executa.php para poder incluí-lo

     if (file_exists("executa.php"))
           {
         include("executa.php");
           }
     if (!file_exists("executa.php"))
           {

             $msgErro = "<center><font color='#FF0000'><b>";
             $msgErro .= "Não será possível executar nenhuma ação no Banco de Dados!<br>";
             $msgErro .= "Porque não existe o arquivo 'executa.php'.";
             $msgErro .= "</b></font></center>";
             echo "<br><br>";
             echo $msgErro;
             echo "<br>";
             exit;
          } 
     //recebendo os dados do formulário login

     $login = $_POST['login'];
     $senha = $_POST['senha'];
     
     if(empty($login) || empty($senha))
          {
             echo "<center>INFORME TODOS OS DADOS !!</center>";
             echo "<center><input type = 'button' value = 'Voltar' name = 'btnVoltar' Onclick = 'java script:history.go(-1)'></center>";
          } 

  if(((strlen(trim($login))) and (strlen(trim($senha)))) > 0)
          {
                  // ---------------------- FUNCAO PARA CRIPTOGRAFIA

                    function md5x($senha)
                         {
                                    return strrev( md5( strrev( md5( $senha ))));
                         }
                    $senha_crip = md5x($senha);
                    
                            // -----------------------------------------------

                      $sql = "SELECT login,senha FROM tb_colaborador WHERE login='$login' and senha='$senha_crip'";

                      //Chamando a função, e passando como parâmetro a String de SQL

                      $resultado = executa($sql);

                     if (!$resultado)
                         {

                          echo "Erro!\n";
                          exit;

                        }
          
                       $arr = pg_fetch_all($resultado);

                    if($arr)
                       {
                         $validacao = "1";
                 
                       //gravo as informações das variáveis dentro das sessões
                
                         $_SESSION[login] = $login;
                         $_SESSION[validacao] = $validacao;
                         $_SESSION[senha] = $senha_crip;

                         header("Location: principal.php");

                       }else

                ?>
                <script type="text/javascript">
                alert("Login ou senha incorreta")
                </script>

                 <?
        }
                 ?>

principal.php
<?

 //Inicia a sessão

session_start();

//agora verifico se ele possui permissão para acessar a página

 if ($validacao == "1")
 {
?>

<HTML>
<HEAD>
 <TITLE>Pagina restrita 1</TITLE>
</HEAD>
<BODY>
Seja bem vindo <b><? echo $login; ?></b> a Pagina restrita
<br>
<a href="login.html" >Deslogar</a>
</BODY>
</HTML>
<?
 }
 else
 {
//exiba um alerta dizendo que a senha esta errada
?>

  <script type="text/javascript">
alert("Login ou senha incorreta")
</script>

<?
 echo "<a href=login.html >VOLTAR</a>";
 }
?>

Ele me retorna dizendo que o $validacao não esta definido.

É um sistema de login e estou usando PostGreSQL...

Quando o usuario digita o login e senha ele envia os dados para serem tratados pelo controle.php

Link para o comentário
Compartilhar em outros sites

  • 0

Inicie $validação antes de atribui-la o valor 1:

$validacao = 0;
if($arr)
{
$validacao = 1;

Coloque aspas nos índices alfanuméricos da array session:
$_SESSION['login'] = $login;
$_SESSION['validacao'' ] = $validacao;
$_SESSION['senha'] = $senha_crip;
Troque:
if ($validacao == "1")
{
?>
por:
if ($_SESSION['validacao'] == "1")
{
?>

Veja se resolve.

[]'s

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...