milka Postado Fevereiro 7, 2007 Denunciar Share Postado Fevereiro 7, 2007 Oi pessoal,Quando envio variáveis de um formulário para outro (method="POST") usando session_start() o PHP retorna um erro de variável não definida. O que pode estar acontecendo ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Fevereiro 7, 2007 Denunciar Share Postado Fevereiro 7, 2007 Poste seu código para vermos onde está o erro.[]'s Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 milka Postado Fevereiro 7, 2007 Autor Denunciar Share Postado Fevereiro 7, 2007 Poste seu código para vermos onde está o erro.[]'scontrole.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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Beraldo Postado Fevereiro 7, 2007 Denunciar Share Postado Fevereiro 7, 2007 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 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 milka Postado Fevereiro 7, 2007 Autor Denunciar Share Postado Fevereiro 7, 2007 Nossa !! Era isso mesmo...Muito Obrigada !![]s Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
milka
Oi pessoal,
Quando envio variáveis de um formulário para outro (method="POST") usando session_start() o PHP retorna um erro de variável não definida.
O que pode estar acontecendo ?
Link para o comentário
Compartilhar em outros sites
4 respostass a esta questão
Posts Recomendados
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.