Ate hoje tinha um sistema rodando bem, o sistema funciona assim, cada usuário tem seu login e senha para ter acesso a diretórios diferentes do domínio, mas fazendo teste percebi que depois de fazer o login, é possível mudar o caminho acima, que terá acesso ao diretório de outro usuário exemplo:
www.meusite/manogaucho/usuario/user01 entraria com login e senha, teria acesso a paginas e conteúdo do diretório, então vem a bronca, se modificar para www.meusite/manogaucho/usuario/user02 entraria no diretório sem usar a senha do usuário, descobrir fazendo testes, não sei se algum usuário sabe, mas é bom mudar para ficar melhor.
Assim não daria para proteger por .htaccess ,pois teria que ser por banco de dados mysql , o sistema já tá rodando o usuário pode alterar dados como senha , nome , e-mail o único problema é ter esse acesso aos diretórios depois que se logou com seus dados.
<?
session_start();
//Dados para conexão com o MySQL
$host = "xxxxxxxxx"; //Servidor
$user = "xxxxxxxxxxxxx"; //Usuário
$pass = "xxxxxxxxx"; //Senha
$bd = "xxxxxxxxxxx"; //Base de Dados
//Não mexa!!!
mysql_connect($host, $user, $pass);
mysql_select_db($bd);
//Configuração
$site = "Paginas Restritas"; //Nome do site
$url = "manogaucho/usuario/user01"; //Pasta onde está o script sem "/" no final
$pger = "proibido.php"; //Página que receberá os redirecionamentos de páginas restritas se não logadas
$pgsc = "logado.php"; //Página que receberá o redirecionamento quando logado
$cprg = "<font size=4>Bom Dia</font>";
?>
login.php
<?
include("./config.php");
$l = $_POST['l'];
$s = $_POST['s'];
//$s = md5(md5(md5(md5($s))));
$sql = mysql_query("SELECT * FROM vendedor WHERE usuario='$_POST[l]' AND senha='$s' AND product_code = 01"); // para logar somente o usuario com product_code = 01
//para outros diretoriso uso product_code = 02..product_code = 03 e assim por diante
$cnt = @mysql_num_rows($sql);
if($cnt >= 1){
$_SESSION['usuario'] = $l;
header("Location: ".$url."/".$pgsc);
} else {
header("Location: ".$url."/index.php?erro=Login ou senha incorretos");
}
echo $cprg;
?>
Você não tem autorização para ver está página!
<a href="java script: history.go(-1);"><<--Voltar</a>
logado.php
<?
include("privado.php"); ?>
Esta é a página que você está logado: <?=$_SESSION['login'];?>
Para sair clique <a href="<?=$url?>/logout.php">aqui</a>.
<?php
header("Location: conteudo.php");
exit();
?>
Uso em cada pagina para ser protegida
<?
include("privado.php");
?>
pagina teste conteudo.php
<?
include("privado.php");
?>
Bem Vindo
Tabela
CREATE TABLE IF NOT EXISTS `vendedor` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`usuario` text NOT NULL,
`senha` text NOT NULL,
`nome` text NOT NULL,
`fornecedor` text NOT NULL,
`email` text NOT NULL,
`tel` text NOT NULL,
`link` text NOT NULL,
`product_code` text NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=45;
Pergunta
manogaucho
Tudo bem!
Ate hoje tinha um sistema rodando bem, o sistema funciona assim, cada usuário tem seu login e senha para ter acesso a diretórios diferentes do domínio, mas fazendo teste percebi que depois de fazer o login, é possível mudar o caminho acima, que terá acesso ao diretório de outro usuário exemplo:
www.meusite/manogaucho/usuario/user01 entraria com login e senha, teria acesso a paginas e conteúdo do diretório, então vem a bronca, se modificar para www.meusite/manogaucho/usuario/user02 entraria no diretório sem usar a senha do usuário, descobrir fazendo testes, não sei se algum usuário sabe, mas é bom mudar para ficar melhor.
Assim não daria para proteger por .htaccess ,pois teria que ser por banco de dados mysql , o sistema já tá rodando o usuário pode alterar dados como senha , nome , e-mail o único problema é ter esse acesso aos diretórios depois que se logou com seus dados.
formulario index.php
config.php login.php privado.php proibido.php logado.php Uso em cada pagina para ser protegida pagina teste conteudo.php TabelaObrigado! Espero que este material ajude.
Editado por manogauchoLink para o comentário
Compartilhar em outros sites
6 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.