Sistema De Login Usando Sessions E Mysql
#46
Posted 02/08/2004, 10:43
nessa pagina teste.php está como o codigo ?
até + !
PALMEIRAS - Primeiro campeão do mundo em 1951
#47
Posted 13/08/2004, 15:58
Entre no Site acima clicando aqui!
#48
Posted 24/05/2005, 17:10
Notice: Undefined index: acao in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 17 Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php:17) in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 42 teste
esses foram os erros q deram depois q eu loguei... esse é meu arquivo loga.php
session_name("promocao"); session_start(); $root = "./../"; include ($root.'includes/conn.php'); if($_GET['acao'] == "logar") { $nome = $_POST['usuario']; $q_user = mysql_query("SELECT * FROM unifat_admin WHERE usuario='$nome'"); if(mysql_num_rows($q_user) == 1) { $query = mysql_query("SELECT * FROM unifat_admin WHERE usuario='$nome'"); $dados = mysql_fetch_array($query); if($_POST['senha'] == $dados['senha']) { session_register("usuario"); header("Location: index_admin.php"); exit; } else { header("Location: index.php?login=falhou&causa=".urlencode('Senha Errada')); exit; } } else { header("Location: index.php?login=falhou&causa=".urlencode('User Inválido')); exit; } } //agora a parte que verifica se o login já foi feito if(!session_is_registered("nome")) { header("Location: index.php"); } ?>
obrigado...
Flws...Até mais
Edição feita por: HellBurn, 24/05/2005, 17:12.
#49
Posted 24/05/2005, 22:24
Isso tá acontecendo pq tu tá mandando algo pro cliente antes das funções da sessão e da header().. Pode ser um print, um echo, ou até mesmo um código HTML..
As funções da sessão deve ser as primeiras coisas do script.. Ou seja, devem estar nas primeiras linhas..
chinello at gmail dot com
System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38
#50
Posted 25/05/2005, 08:56
qdo eu entro em login.php da esse erro:
Notice: Undefined index: login in c:\arquivos de programas\easyphp1-8\www\unifat\admin\login.php on line 15mas aparece o formulario de login certinho...
qdo eu entro em page.php direto sem logar da isso na pagina:
Notice: Undefined index: acao in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 14 Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php:14) in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 43 Olá Notice: Undefined index: nome in c:\arquivos de programas\easyphp1-8\www\unifat\admin\page.php on line 4 , Aqui vem qualquer coisa, inclusive um link para outras páginas. Link
e qdo eu me logo corretamente dá isso:
Notice: Undefined index: acao in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 14 Olá , Aqui vem qualquer coisa, inclusive um link para outras páginas. Link
o q pode ser... esta exatamente como passado no tutorial..
Flws...Até mais
#51
Posted 03/06/2005, 14:36
kra nao entendi... e testei aqui e nao funcionou... nao mostrou nada...Bom, fazer isso é bem simples..
eu tb quero saber issotipo... eu entrei no cadastro mas eu gostaria que ao exibir a page.php mostrasse os resultados que criei no db tipo
Olá: Marcel
Você mora bem MG
Cidade de Belo Horizonte
etc...
como eu faço pra imprimir isso?
eu ja tenho as tabelas criadas com os valores nome, estado, cidade, etc...
Tá, depois de verificar se a senha do usuário está correta e tudo mais, tu vai lá e busca as info do usuário (assim como tu citou, cidade, estado, etc...).. Feito isso, é só armazenar cada valor em uma variável, e depois vc registra na seção, tipo assim:Pronto, agora, nas pages depois de logado, pra ti chamar as info do user q tá logado, tu faz assim://isso aqui depois de verificar a senha e tudo mais
$cidade = "Belo Horizonte"; //essa info veio de um banco de dados.
$estado = "Minas Gerais"; //essa info tb veio de um banco de dados.
//agora é só registrar na sessão, dessa forma:
session_register("cidade");
session_register("estado");Prontinhu..<?
//tu pode imprimir direto pro user:
print $HTTP_SESSION_VARS["cidade"];
print $HTTP_SESSION_VARS["estado"];
//ou então armazenar o valor numa variável, para usar depois e/ou mostrar pro user tb
$cidade_user = $HTTP_SESSION_VARS["cidade"];
$estado_user = $HTTP_SESSION_VARS["estado"];
//agora é só exibir
print "Você é de $cidade_user, do estado $estado_user";
?>
Fui..
assim como os outros disseram... preciso exibir os dados que estao no banco de dados....
normalmente, qdo eu precisava fazer a lista dos dados do bd, eu pegava a variavel passada da pagina anterior e tals...
mas, com o session, como fazer ?
A parte de login e logoff funcionam normal... mas preciso criar as paginas pra pegar os dados e tals...
pode ajudar ae?
tentei isso aki: <? print $_SESSION["nome"]; ?> mas nada aparece...
#52
Posted 03/06/2005, 14:55
Hellhunter.nao, creio q o problema nao é esse.... agora eu fiz exatamente como esta ai no tuto, os arquivos, banco de dados e tals....
qdo eu entro em login.php da esse erro:Notice: Undefined index: login in c:\arquivos de programas\easyphp1-8\www\unifat\admin\login.php on line 15mas aparece o formulario de login certinho...
qdo eu entro em page.php direto sem logar da isso na pagina:Notice: Undefined index: acao in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 14 Warning: Cannot modify header information - headers already sent by (output started at c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php:14) in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 43 Olá Notice: Undefined index: nome in c:\arquivos de programas\easyphp1-8\www\unifat\admin\page.php on line 4 , Aqui vem qualquer coisa, inclusive um link para outras páginas. Link
e qdo eu me logo corretamente dá isso:Notice: Undefined index: acao in c:\arquivos de programas\easyphp1-8\www\unifat\admin\loga.php on line 14 Olá , Aqui vem qualquer coisa, inclusive um link para outras páginas. Link
o q pode ser... esta exatamente como passado no tutorial..
Flws...
Não há erro nenhum no script. E tu tb não fez nada de errado.
O q tu chama de erros, na verdade são Notices (notícias), q não interferem em nada no funcionando do script, e são utilizados apenas para desenvolvimento..
Isso é uma configuração do teu PHP.ini.. Uma linha q fala do error_reporting..
Provavelmente no teu PHP.ini, tá como E_ALL.. Por isso mostra os notices, q são desnecessários..
Para q não mostre mais os notices, deixa o teu PHP.ini com a linha do error_reporting assim:
error_reporting = E_ALL & ~E_NOTICE
Qto ao Warning.. Ele diz q o motivo do Warning tá na linha 43 do arquivo: loga.php .. Mas este arquivo tem apenas 34 linhas.. Ou seja, alguma tá errada aí nos arquivos do teu PC.. Me mostra o q tem nesse teu arquivo loga.php..
Espero ter ajudado..
Não eskeça.. Dúvidas?? http://forum.phpclube.com.br/
chinello at gmail dot com
System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38
#53
Posted 03/06/2005, 15:02
Primeiramente, pra tir acesso aos dados q estão na variável $_SESSION, tu tem q iniciar a sessão na página.. Então, como eu falei no início, em todas as páginas que vai querer usar os dados da sessão, tu vai ter que colocar esse código no topo da página:kra nao entendi... e testei aqui e nao funcionou... nao mostrou nada...
assim como os outros disseram... preciso exibir os dados que estao no banco de dados....
normalmente, qdo eu precisava fazer a lista dos dados do bd, eu pegava a variavel passada da pagina anterior e tals...
mas, com o session, como fazer ?
A parte de login e logoff funcionam normal... mas preciso criar as paginas pra pegar os dados e tals...
pode ajudar ae?
tentei isso aki: <? print $_SESSION["nome"]; ?> mas nada aparece...
<? require("loga.php"); ?>Só assim tu vai poder ter acesso aos dados de $_SESSION..
Pra ti ver se tem alguma coisa na sessão, tu pode fazer assim:
<? require("loga.php"); print "<pre>"; print_r($_SESSION); print "</pre>"; ?>Se tu voltar pra página de login, é pq não tem nada na sessão, se tu não voltar pra página de login vai ser mostrado um array com tudo o q em gravado na sessão..
Bom, tu pode dizer agora o q acontece qdo tu usa esse código q passei, aí nós podemos depurar onde está o erro..
Ainda com dúvidas?? http://forum.phpclube.com.br/
Receba mais atenção neste script: http://forum.phpclub...hp?showtopic=14
Edição feita por: Chinello Cybernético, 03/06/2005, 15:03.
chinello at gmail dot com
System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38
#54
Posted 03/06/2005, 15:16
no caso, entendi q tenho q colocar o loga.php em todas as paginas.. blz
fazendo esse cod q vc passou, retornou:
Array ( [email] => neo@abcrede.com.br )
certo, essa variavel q está no banco está correta. Porem, o meu banco tem uns 15 campos... e gostaria de "puxar" e mostrar na tela do usuario que está logado esses dados.. e a partir daí criar um painel de controle (q depois se isso aki funcionar, creio q consiga fazer... )
bom.. oq eu tentei fazer...:
ja tentei usar a query (q_user) q tem no loga.php:
No meu caso está assim:
$q_user = mysql_query("SELECT * FROM usuarios WHERE email_user='$email'");e colocar na pagina que deveria mostrar as infos o seguinte:
$linha = mysql_fetch_array($q_user); $nome = $linha["nome_user"]; $contato = $linha["contato_user"]; ?> <? echo $contato; ?>
Porem, ao se tentar abrir a pagina, retorno o seguinte erro:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in d:\appserv\www\aluguefacil\user_logado.php on line 26
Oq está errado??
Ja tentei criar outra query na pagina, mas obtenho o mesmo erro...
#55
Posted 03/06/2005, 16:29
Mas sempre lembrando que pode ser a conexão com o banco de dados..
Para averiguar o erro, adicione um or die() após a query, dessa forma:
$q = mysql_query("SELECT aki dentro") or die (mysql_error());Isso vai te mostrar o erro..
chinello at gmail dot com
System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38
#56
Posted 03/06/2005, 16:39
no problem...
tem uma duvida la.. da uma olhada...
at+
#57
Posted 03/06/2005, 17:55
nao tem sessão aberta ainda, ai eu chamo a pagina de login.... e pelo script a primeira coisa q ele chama é acao... como ele vai localizar acao se ela nao foi criada ainda????
pela logica é isso né....
Flws...
Até mais
#58
Posted 03/06/2005, 18:04
Com certeza..blz Chinello... veja se vc concorda comigo....
nao tem sessão aberta ainda, ai eu chamo a pagina de login.... e pelo script a primeira coisa q ele chama é acao... como ele vai localizar acao se ela nao foi criada ainda????
pela logica é isso né....
Flws...
Mas isso não é um erro.. O PHP dispara um Notice para isso, e não um erro..
Dá uma olhada na documentação pra intender um pokin mais: http://br2.php.net/errorfunc
chinello at gmail dot com
System > Athlon 64 3200+ Mobile | Kubuntu 7.04 Fesity Fawn AMD64 | Kernel 2.6.20-16
Coding @ KDE 3.5.7 | PHP 5.2.1 | Apache 2.2.3 | MySQL 5.0.38
#59
Posted 03/06/2005, 18:07
valeu...
Até mais
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)