Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Bom dia a todos! Olha eu de novo pessoal! rsrsrssr
É o seguinte, eu rodava o wamp4 e tudo funciona perfeito, agora migrei para o wamp5, e tenho a parte de administração do site, que exige login (usuario e senha). Se o usuario nao existe no db ele diz que não existe (até ai perfeito), se o usuário existe ele faz o login normalmente e vai para a página de administração.
Porém eu coloquei restiçoes nas páginas de administração, e eu fazendo testes indo direto para as páginas que deveriam estar restringidas, está entrando direto! Mostra a mensagem de que a página é restrita, mas abre o conteúdo dela, enfim não está restringindo.
olha o código:
index.php :
<html>
<head>
<title>Área do Administrador</title>
</head>
<body bgcolor="#DFDFBF" link="#DFDFBF" alink="#DFDFBF" vlink="#DFDFBF">
<center>
<h3>Área do Administrador do Site</h3><p><br><br><br>
<table border="0" width="150">
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Administrador
</font>
<tr>
<td bgcolor="#D0D0D0">
<?php
include ("base.php");
if ($HTTP_POST_VARS['entrar']=='Entrar!')
{
@session_start();
$result=mysql_query('select administrador,senha from adm where administrador="'.trim($nome).'";',$conexao) or die ("erro 001" . mysql_error());
if (mysql_num_rows($result)>0)
{
$ususenha=mysql_result($result,0,senha);
}
else
{
$ususenha='notuser';
}
if ($result && ($senha==$ususenha) && ($ususenha != 'notuser')){
$_SESSION['nome']=true;
@session_register($nome);
echo '<p align="center">';
echo '<font style="tahoma" size="4">';
echo $nome.'</font><br>';
echo '<font style="tahoma" size="4">';
echo 'Você está logado! <a href="adm.php"><img src="img/icones/btnseguir.gif" border="0" alt="Proseguir"></a>';
}
else
{
echo '<center>Usuário não autorizado!</center>';
echo '<p><center><a href="index.php"><img src="img/icones/btnvoltar.gif" border="0"></a></center>';
}
}
else
{
echo '<form method="post" name="logar" action=""><font style="tahoma" size="3">
Nome: <input type="text" name="nome" value="" size="25"><br>
Senha: <input type="password" name="senha" value="" size="25"><br>
</font>
<p align="center">
<input onmouseover="this.style.cursor="hand" type="submit" name="entrar" value="Entrar!" style="border:0;height:18;width:50;background:#E8F3Fd">
</p>
</form>';
}
?>
</td>
</tr>
</table>
<a href="../index.php"><img src="img/icones/btnsite.gif" border="0" alt="Voltar ao Site"></a>
</center>
</body>
</html>
e nas páginas que quero restringir:
página.php :
<?php
@session_start();
if ($_SESSION['nome'] == true)
{
}
else
{
echo '<center><h1><font color="red"><u>ÁREA RESTRITA</font></u><h1></center>';
}
?>
<html>
<head>
<title>Página de Administrção do MENU</title>
</head>
<body bgcolor="#DFDFBF" link="#000000" alink="#000000" vlink="#000000">
<center>
<font style="tahoma" size="5">
<p align="center">
Administrador, você está em uma área restrita!
</p>
</font>
<table border="0" width="500">
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Menu do Administrador:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admadministrador.php">Configurações do Administrador</a>
</td>
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Textos:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admpaginicial.php">Administração Textos Página Inicial</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admnossaempresa.php">Administração Textos Nossa Empresa</a>
</td>
</tr>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admnoticias.php">Administração Textos Últimas Notícias</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admentregas.php">Administração Textos Entregas</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgentregas.php">Administração Textos Garantias das Entregas</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgprodutos.php">Administração do Textos Garantias dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgqualidade.php">Administração do Textos Garantias de Qualidade dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgprocedencias.php">Administração do Texto Garantias das Procedências dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgvantagens.php">Administração do Textos Vantagens de Tornar-se Parceiro</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admcadastros.php">Administração dos Cadastros</a>
</td>
</tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Fotos:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotospaginicial.php">Administração Fotos Página Inicial</a>
</td>
</tr>
<tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotosloja.php">Administração Fotos Loja</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admprodutos.php">Administração Fotos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admparceiros.php">Administração Fotos Parceiros</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admequipe.php">Administração Fotos Equipe</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotostransportes.php">Administração Fotos Frota Transportes</a>
</td>
</tr>
<p><br><center>
<a href="../index.php"><img src="img/btnsite.gif" border="0" alt="Voltar ao Site"></a>
</center>
</body>
</html>
Mostra a mensagem de ÁREA RESTRITA e todo o conteúdo.
Agradecido desde já pela paciência e atenção dispensadas;
>
Será que naõ faltou você redirecionar caso estiver errado?
echo '<center>Usuário não autorizado!</center>';
echo '<script language=javascript>location.href='home.php'</script>';
Isto mesmo !!! Esqueci disto. Obrigado pelo toque !!!! E como faço para colocar um DELAY, para a mensagem ficar uns 3 segundos antes de redirecionar ?
Obrigado pela atenção; http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif
Opa opa. 1 minuto!
Não não deu certo... mesmo com o usuário autenticado ele tá caindo no else e retornando a pagina princiapl. Tenho certeza que é problema nas configurações dos cookies.... mas não estou conseguindo configurar.
Se alguem souber as configurações ai do PHP.ini por favor poste.
Agradecido desde já;
Cara... na boa....
seu php.ini enxeu o saco
aehuiaehuiaehuiaehuiaehuiaehuiae
é pq eu tenho o costume de olhar o post inteiro antes de responder
foi mal falar... mas é isso aí... tem que pensar em todas as possibilidades de erro mesmo...
então cara... corrija-me se eu estiver errado...
até mesmo porque eu não analisei o seu código com paciência...
mas pelo que vi você está tratando a segurança das suas páginas restritas com isso:
if ($_SESSION['nome'] == true)
Cara... você concorda que todo usuário possui um nome?Pelo que eu vi você está validando a sessão se o nome for verdadeiro e, logicamente, será pois todo usuário tem um nome e você não está comparando o nome do usuário a uma string relacionada a permissão.
Porque você não cria uma tabela permissão no seu bd e faz essa verificação? Daí você salva a sessão com o id, login e permissão do usuário e compara esse conteúdos.
Recentemente eu fiz um sistema de login com níveis dessa forma.
Se eu disse besteira me desculpa ae, mas é que nem analisei seu código direito e eu to cravado de sono.
aehiuaehuae
[]'s
Desculp ter colocado o PHP.ini inteiro, mas o problema não é a autenticação com o nome, e sim o wamp5 não deve estar configurado corretamente para trabalhar com os cookies, ai esta minha dúvida. Quais são as configurações exatas no PHP.ini em relação aos cookeis. Pois não está fazendo a autenticação, por isto retorna a página principal.
Estou rodando o wamp5 em localhost, no wamp4 ia que era uma beleza, fui atualizar e deu nisto. Agora não acho mais o wamp 4 para baixar, que vinha com o php4...
Vou continuar fuçando nas configurações do PHP.ini se eu descobrir eu posto. Porém se alguém souber desta configurações poste por favor.
Valeu pela atenção;
É cara... aí já é outra história.
Não trabalho com esses pacotões auto-configurados.
Te recomendo utilizar o Apache + PHP5 + MySQl Server + MySQL Front
Estou fazendo um tutorial para configuração desses programas.
Acho que hoje a tarde eu termino.
[]'s
>
É cara... aí já é outra história.
Não trabalho com esses pacotões auto-configurados.
Te recomendo utilizar o Apache + PHP5 + MySQl Server + MySQL Front
Estou fazendo um tutorial para configuração desses programas.
Acho que hoje a tarde eu termino.
[]'s
Legal, estamos no aguardo !!! Valeuuuuuuuuuuuuuu
É AlterC, estes pacotes pré configurados não são bons mesmo! O Rafael Mussi dispensou um bom tempo dele, e on-line, modificou os meus arquivos e me mandou de volta, também, me ensinou passo a passo a instalar o IIS, o PHP e o MySQL separados. Ficou Show de Bola. Quero agradecer o Rafael Mussi por todo seu conhecimento e pela atenção dispénsada.
Valeu Rafael !!! Obrigadoooooooooo NOTA 10. Agora tudo funcionando perfeito.
Então ficaram assim os arquivos:
index.php:
<?php
if ($_POST['entrar']=='Entrar!')
session_start();
?>
<html>
<head>
<title>Área do Administrador</title>
</head>
<body bgcolor="#DFDFBF" link="#DFDFBF" alink="#DFDFBF" vlink="#DFDFBF">
<center>
<h3>Área do Administrador do Site</h3><p><br><br><br>
<table border="0" width="150">
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Administrador
</font>
<tr>
<td bgcolor="#D0D0D0">
<?php
include ("base.php");
if ($_POST['entrar']=='Entrar!')
{
$querySQL = "SELECT "
. " administrador,"
. " senha"
. " FROM"
. " adm"
. " WHERE"
. " administrador = '" . $_POST['nome'] . "'"
. " AND"
. " senha = '" . $_POST['senha'] . "'";
$result = mysql_query($querySQL) or die ("erro 001". mysql_error());
//$result = mysql_query('select administrador,senha from adm where administrador="'.trim($nome).'";',$conexao) or die ("erro 001" . mysql_error());
if ($registro = mysql_fetch_array($result))
{
$_SESSION['s_login']['nome'] = $registro['administrador'];
$_SESSION['s_login']['senha'] = $registro['senha'];
echo '<p align="center">';
echo '<font style="tahoma" size="4">';
echo $_SESSION['s_login']['nome'].'</font><br>';
echo '<font style="tahoma" size="4">';
echo 'Você está logado! <a href="adm.php"><img src="img/icones/btnseguir.gif" border="0" alt="Proseguir"></a>';
}
else
{
echo '<center>Usuário não autorizado!</center>';
echo '<p><center><a href="index.php"><img src="img/icones/btnvoltar.gif" border="0"></a></center>';
unset ($_SESSION['s_login']);
}
}
else
{
echo '<form method="post" name="logar" action=""><font style="tahoma" size="3">
Nome: <input type="text" name="nome" value="" size="25"><br>
Senha: <input type="password" name="senha" value="" size="25"><br>
</font>
<p align="center">
<input onmouseover="this.style.cursor="hand" type="submit" name="entrar" value="Entrar!" style="border:0;height:18;width:50;background:#E8F3Fd">
</p>
</form>';
}
?>
</td>
</tr>
</table>
<a href="../index.php"><img src="img/icones/btnsite.gif" border="0" alt="Voltar ao Site"></a>
</center>
</body>
</html>
e o adm.php:
<?php
session_start();
if (isset($_SESSION['s_login']['nome']) && isset($_SESSION['s_login']['senha']))
{
?>
<html>
<head>
<title>Página de Administrção do MENU</title>
</head>
<body bgcolor="#DFDFBF" link="#000000" alink="#000000" vlink="#000000">
<center>
<font style="tahoma" size="5">
<p align="center">
Administrador, você está em uma área restrita!
</p>
</font>
<table border="0" width="500">
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Menu do Administrador:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admadministrador.php">Configurações do Administrador</a>
</td>
<tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Textos:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admpaginicial.php">Administração Textos Página Inicial</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admnossaempresa.php">Administração Textos Nossa Empresa</a>
</td>
</tr>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admnoticias.php">Administração Textos Últimas Notícias</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admentregas.php">Administração Textos Entregas</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgentregas.php">Administração Textos Garantias das Entregas</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgprodutos.php">Administração do Textos Garantias dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgqualidade.php">Administração do Textos Garantias de Qualidade dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgprocedencias.php">Administração do Texto Garantias das Procedências dos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admgvantagens.php">Administração do Textos Vantagens de Tornar-se Parceiro</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admcadastros.php">Administração dos Cadastros</a>
</td>
</tr>
<td align="center" bgcolor="#C0C0FF">
<font style="tahoma" size="4">Fotos:
</font>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotospaginicial.php">Administração Fotos Página Inicial</a>
</td>
</tr>
<tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotosloja.php">Administração Fotos Loja</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admprodutos.php">Administração Fotos Produtos</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admparceiros.php">Administração Fotos Parceiros</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admequipe.php">Administração Fotos Equipe</a>
</td>
</tr>
<tr>
<td bgcolor="#D0D0D0">
<a href="admfotostransportes.php">Administração Fotos Frota Transportes</a>
</td>
</tr>
<?php
}
else
{
unset ($_SESSION['s_login']);
echo '<center>Usuário não autorizado!</center>';
echo '<p><center><a href="index.php"><img src="img/icones/btnvoltar.gif" border="0"></a></center>';
}
?>
<p><br><center>
<a href="../index.php"><img src="img/btnsite.gif" border="0" alt="Voltar ao Site"></a>
</center>
</body>
</html>
Esta ai. Para quem quiser usar, é uma sessão de login que leva a um menu. Ai é só adaptar para o que se quer.
Valeu Mussi ! http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Agilizou grandão !!!!
Será que naõ faltou você redirecionar caso estiver errado?