Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Sign in to follow this  
Big-D

Problema em PHP (Resolvido)

Recommended Posts

Big-D

Antes demais nada Boa Tarde,

O meu problema é o seguinte:

Estou a criar uma pequena web page na qual terei os comportamentos de Login, Logout, Areas de acesso restrito, pagina de registo, melhor dizendo um pouco do essencial numa pagina web.

Consegui com sucesso criar todos os comportamentos acima descritos mas há o seguinte problema:

Após ter sido efectuado o login se com sucesso ele é redirecionado para a pagina inicial (onde se situa o login) e após isso tentei entao fazer com que aparecesse o seguinte texto (Olá "felano" tal) onde "felano" é o nome introduzido na caixa do user. Mas para isso segundo ja fui vendo noutros sites é preciso realizar um check cookies para que seja possivel tal mensagem aparecer e que seja possivel ja nao efectuar o login outra vez.

Será que me podem indicar algo que me possa ajudar (seja link, livro, video).

Agradecia resposta.

Share this post


Link to post
Share on other sites
jcfr

suponho que tens lá uma tabela do genero

id, user, pass, nome.....

e suponho que em cada página da administração tens o código de verificação da sessão para verificar se tem acesso á página em questão ou para seleccionar o conteúdo a que tem acesso e tb se está autenticado...

Share this post


Link to post
Share on other sites
Big-D

e suponho que em cada página da administração tens o código de verificação da sessão para verificar se tem acesso á página em questão ou para seleccionar o conteúdo a que tem acesso e tb se está autenticado...

se com isto queres saber se tenho areas de acesso restrito, ou seja que se o user nao tiver logged in ele nega o acesso, entao sim tenho, caso contrario nao percebi bem o que queres dizer.

sim tenho uma tabela com nome utilizadores com os campos id, nome, pass, mail e contacto

Share this post


Link to post
Share on other sites
Demoins

if(isset($_SESSION["felano"])) {
echo "Olá ".$_SESSION["felano"]."!";
}
else {
echo "Bem-vindo estranho - Faça o login!";
}

Qualquer dúvida não hesites!

Share this post


Link to post
Share on other sites
jcfr

if(isset($_SESSION["felano"])) {

echo "Olá ".$_SESSION["felano"]."!";

}

else {

echo "Bem-vindo estranho - Faça o login!";

}

Qualquer dúvida não hesites!

à partida isso não serve porque ele deve ter um campo para user e outro para o nome...

tem de receber o user com o session tal como fizest e de seguida fazer uma perquisa na base de dados para ver qual é o nome e escrevê-lo....

Share this post


Link to post
Share on other sites
jcfr

se com isto queres saber se tenho areas de acesso restrito, ou seja que se o user nao tiver logged in ele nega o acesso, entao sim tenho, caso contrario nao percebi bem o que queres dizer.

sim tenho uma tabela com nome utilizadores com os campos id, nome, pass, mail e contacto

entao pelo que percebi o user que utilizas é o nome ou o email, se for o email tens de fazer como eu disse, receber o user com o session e pesquisar na base de dados para ver qual é o nome, se o user for o nome basta fazeres como o Demoins disse...

Share this post


Link to post
Share on other sites
Demoins

à partida isso não serve porque ele deve ter um campo para user e outro para o nome...

tem de receber o user com o session tal como fizest e de seguida fazer uma perquisa na base de dados para ver qual é o nome e escrevê-lo....

ou não... ele pode na página de login, ao fazer a pesquisa pelo utilizador, definir quantas variaveis de sessao quiser... Logo pode por duas variaveis: uma com o nome, outra com o id e assim pode tambem aproveitar essa variavel para fazer outras pesquisas enquanto o utilizador percorre o website.

Share this post


Link to post
Share on other sites
Big-D

ja consegui graças a esse exemplo por mal seja feito o login num sitio aparte dentro da mesma pagina aparecer o nome usado na textbox.

Mas o meu grande problema é que eu criei o login com a ajuda do dreamweaver e obrigatoriamente tenho de fazer um redirecionamento para uma pagina se o login for feito com sucesso e eu pus para ir para a mesma pagina, ou seja:

na pagina principal -> faço login na pagina principal -> volta outra vez pra pagina inicial e em vez de aparecer a cena para fazer de novo login tem de aparecer "Ola felano"

e isto é que nao ta dar

Share this post


Link to post
Share on other sites
jcfr

concordo com a ideia do id até porque também a utilizo, mas discordo da ideia de se utilizar o nome como username...

até porque a maioria dos utilizadores gosta de usar apelidos como no teu caso Demoins não deve ser o teu nome digo eu...

penso que o ideal é utilizar duas variáveis separadas...

o que pode ser feito é no ficheiro do login verificar o user e inserir na sessão em vez de id e user o id e o nome assim nas páginas verifica o id e já pode utilizar o nome directamente...

é a minha opinião mas obviamente cada um faz como lhe dá mais jeito...

Share this post


Link to post
Share on other sites
jcfr

ja consegui graças a esse exemplo por mal seja feito o login num sitio aparte dentro da mesma pagina aparecer o nome usado na textbox.

Mas o meu grande problema é que eu criei o login com a ajuda do dreamweaver e obrigatoriamente tenho de fazer um redirecionamento para uma pagina se o login for feito com sucesso e eu pus para ir para a mesma pagina, ou seja:

na pagina principal -> faço login na pagina principal -> volta outra vez pra pagina inicial e em vez de aparecer a cena para fazer de novo login tem de aparecer "Ola felano"

e isto é que nao ta dar

devias colocar para duas páginas distintas... mas em relação aos logins automáticos do dreamweaver é melhor não comentar porque nunca utilizei e não sei quais são os parametros que eles utilizam nem nomes de variáveis etc... mas concerteza dá para na dita página receberes um valor que te indica se está logado ou não...

depois é so fazeres um if... se estiver apresentas a página e o nome, senão apresentas o que queres a dizer que não está e para fazer login...

Share this post


Link to post
Share on other sites
Big-D

Eu decidi então criar uma pagina separada onde será efectuado o login. E decidi por em algumas paginas a opção para o user fazer o login e outra opção de registo, eu quero que após o user ter sido registado e depois de ter efectuado o login as opções login e registo não apareçam e sim que apareça a opção logout e o tal textinho a dizer o nome do user (ou seja após login aparece em todas as paginas ate que ele faça logout o texto "Ola usertal" e que as opções login e registo não apareçam).

Se poderem dar algumas sugestões agradecia.

Resto de um bom dia

Share this post


Link to post
Share on other sites
Demoins

Já dei a minha opinião acerca disso... Pesquisa um pouco sobre as variáveis $_SESSION e depois só tens de verificar se foram declaradas ou não e, consoante o resultado da função lógica, exibes a mensagem pretendida.

Cumprimentos,

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.