Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Big-D

Problema em PHP (Resolvido)

Mensagens Recomendadas

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.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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!

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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....

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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.

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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...

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros 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,

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.