Eu criei um sistema onde possui um filtro de login que,caso seja adm direciona a um painel que possui a opçao de mostrar todos os dados dos usuarios cadastrados
e caso logue como usuario possui um painel que lhe permite alterar APENAS os seus dados.
A parte do administrados esta funcionando certinho,mostra todos os dados dos usuarios,le,altera e delta certinho; porem a do usuario,eu não consigo mostrar apenas os dados DELE e sim de todos os demais...
Conseguem me ajudar?
Vou deixar os codigos da pagina do usuario para ajudar
********** INDEX1.PHP ******************
<?php
include("seguranca.php"); // Inclui o arquivo com o sistema de segurança
protegePagina(); // Chama a função que protege a página
?>
<?php
// A sessão precisa ser iniciada em cada página diferente
if (!isset($_SESSION)) session_start();
?>
// Configurações
// ==============================
$_SG['conectaServidor'] = true; // Abre uma conexão com o servidor MySQL?
$_SG['abreSessao'] = true; // Inicia a sessão com um session_start()?
$_SG['caseSensitive'] = false; // Usar case-sensitive? Onde 'thiago' é diferente de 'THIAGO'
$_SG['validaSempre'] = true; // Deseja validar o usuário e a senha a cada carregamento de página?
// Evita que, ao mudar os dados do usuário no banco de dado o mesmo contiue logado.
$_SG['servidor'] = 'localhost'; // Servidor MySQL
$_SG['usuario'] = 'root'; // Usuário MySQL
$_SG['senha'] = 'root'; // Senha MySQL
$_SG['banco'] = 'crud_tutorial'; // Banco de dados MySQL
$_SG['paginaLogin'] = 'login.php'; // Página de login
$_SG['tabela'] = 'customers'; // Nome da tabela onde os usuários são salvos
// ==============================
// ======================================
// ~ Não edite a partir deste ponto ~
// ======================================
// Verifica se precisa fazer a conexão com o MySQL
if ($_SG['conectaServidor'] == true) {
$_SG['link'] = @mysql_connect($_SG['servidor'], $_SG['usuario'], $_SG['senha']) or die("MySQL: Não foi possível conectar-se ao servidor [".$_SG['servidor']."].");
mysql_select_db($_SG['banco'], $_SG['link']) or die("MySQL: Não foi possível conectar-se ao banco de dados [".$_SG['banco']."].");
}
// Verifica se precisa iniciar a sessão
if ($_SG['abreSessao'] == true)
session_start();
/**
* Função que valida um usuário e senha
*
* @param string $usuario - O usuário a ser validado
* @param string $senha - A senha a ser validada
*
* @return bool - Se o usuário foi validado ou não (true/false)
*/
function validaUsuario($usuario, $senha) {
global $_SG;
$cS = ($_SG['caseSensitive']) ? 'BINARY' : '';
// Usa a função addslashes para escapar as aspas
$nusuario = addslashes($usuario);
$nsenha = addslashes($senha);
// Monta uma consulta SQL (query) para procurar um usuário
$sql = "SELECT `id`, `name`, `nivel` FROM `".$_SG['tabela']."` WHERE ".$cS." `usuario` = '".$nusuario."' AND ".$cS." `senha` = '".$nsenha."' LIMIT 1";
$query = mysql_query($sql);
$resultado = mysql_fetch_assoc($query);
// Verifica se encontrou algum registro
if (empty($resultado)) {
// Mensagem de erro quando os dados são inválidos e/ou o usuário não foi encontrado
echo "<script>alert('Login Invalido');window.location='login.php'</script>"; exit;
// Nenhum registro foi encontrado => o usuário é inválido
return false;
} else {
// Definimos tres valores na sessão com os dados do usuário
$_SESSION['usuarioID'] = $resultado['id']; // Pega o valor da coluna 'id do registro encontrado no MySQL
$_SESSION['usuarioNome'] = $resultado['name']; // Pega o valor da coluna 'nome' do registro encontrado no MySQL
$_SESSION['usuarioNivel'] = $resultado['nivel']; // Pega o valor da coluna 'nivel' do registro encontrado no MySQL
if ($resultado['nivel'] == 1) {
header("Location:index.php");
} else if ($resultado['nivel'] == 2) {
header("Location:index1.php");
}
// Verifica a opção se sempre validar o login
if ($_SG['validaSempre'] == true) {
// Definimos dois valores na sessão com os dados do login
$_SESSION['usuarioLogin'] = $usuario;
$_SESSION['usuarioSenha'] = $senha;
}
return true;
}
}
/**
* Função que protege uma página
*/
function protegePagina() {
global $_SG;
if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {
// Não há usuário logado, manda pra página de login
expulsaVisitante();
} else if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {
// Há usuário logado, verifica se precisa validar o login novamente
if ($_SG['validaSempre'] == true) {
// Verifica se os dados salvos na sessão batem com os dados do banco de dados
if (!validaUsuario($_SESSION['usuarioLogin'], $_SESSION['usuarioSenha'])) {
// Os dados não batem, manda pra tela de login
expulsaVisitante();
}
}
}
}
/**
* Função para expulsar um visitante
*/
function expulsaVisitante() {
global $_SG;
// Remove as variáveis da sessão (caso elas existam)
unset($_SESSION['usuarioID'], $_SESSION['usuarioNome'], $_SESSION['usuarioLogin'], $_SESSION['usuarioSenha']);
// Manda pra tela de login
header("Location: ".$_SG['paginaLogin']);
}
<?php
// Inclui o arquivo com o sistema de segurança
require_once("seguranca.php");
// Verifica se um formulário foi enviado
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Salva duas variáveis com o que foi digitado no formulário
// Detalhe: faz uma verificação com isset() pra saber se o campo foi preenchido
$usuario = (isset($_POST['usuario'])) ? $_POST['usuario'] : '';
$senha = (isset($_POST['senha'])) ? $_POST['senha'] : '';
// Utiliza uma função criada no seguranca.php pra validar os dados digitados
if (validaUsuario($usuario, $senha) == true) {
// O usuário e a senha digitados foram validados, manda pra página interna
// Redireciona o visitante de acordo com o nivel
if ($resultado['nivel'] == 1) {
header("Location:index.php");
} else if ($resultado['nivel'] == 2) {
header("Location:index1.php");
}
//header("Location: index.php");
} else {
// O usuário e/ou a senha são inválidos, manda de volta pro form de login
// Para alterar o endereço da página de login, verifique o arquivo seguranca.php
expulsaVisitante();
}
}
Pergunta
Renata Felix
Boa noite galera.
Eu criei um sistema onde possui um filtro de login que,caso seja adm direciona a um painel que possui a opçao de mostrar todos os dados dos usuarios cadastrados
e caso logue como usuario possui um painel que lhe permite alterar APENAS os seus dados.
A parte do administrados esta funcionando certinho,mostra todos os dados dos usuarios,le,altera e delta certinho; porem a do usuario,eu não consigo mostrar apenas os dados DELE e sim de todos os demais...
Conseguem me ajudar?
Vou deixar os codigos da pagina do usuario para ajudar
********** INDEX1.PHP ******************
<?php
include("seguranca.php"); // Inclui o arquivo com o sistema de segurança
protegePagina(); // Chama a função que protege a página
?>
<?php
// A sessão precisa ser iniciada em cada página diferente
if (!isset($_SESSION)) session_start();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link href="css/bootstrap.min.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" type="text/css" href="css/style8.css" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</head>
<body>
<div class="container" style="border-top: 10px solid #fff; border-left: 60px solid #fff; ">
<div class="row">
<div class="panel panel-default">
<div class="panel-body">
<img src="img/restrito.jpg" width="210" height="45"/>
<a href="logout.php" title="Logout" style="margin-left:750px;">
<img src="img/logout-gray.png" width="24" height="24"></a>
</div>
</div>
</div>
<div class="row">
<div class="panel panel-default">
<div class="panel-body">
<h3>Bem - Vindo(a) Usuario</h3> <h2><?php echo $_SESSION['usuarioNome']; ?></h2>
<p>** Utilize o menu interativo abaixo para acessar as opcoes<p>
</div>
</div>
<ul class="ca-menu">
<li>
<a href="usuario_logado.php">
<span class="ca-icon" id="heart">U w</span>
<div class="ca-content">
<h2 class="ca-main">Dados e Senha</h2>
<h3 class="ca-sub">Alterar suas informacoes </h3>
</div>
</a>
</li>
<li>
<a href="#">
<span class="ca-icon">F</span>
<div class="ca-content">
<h2 class="ca-main">Meus Arquivos</h2>
<h3 class="ca-sub">Acessar arquivos </h3>
</div>
</a>
</li>
<li>
<a href="#">
<span class="ca-icon">e</span>
<div class="ca-content">
<h2 class="ca-main">Ajuda e Suporte</h2>
<h3 class="ca-sub">Precisa de ajuda em algo?</h3>
</div>
</a>
</li>
<li>
<a href="logout.php">
<span class="ca-icon">X</span>
<div class="ca-content">
<h2 class="ca-main">Sair</h2>
<h3 class="ca-sub">Deslogar da sessao</h3>
</div>
</a>
</li>
</ul>
</div>
</div>
</br>
</br>
</br>
</body>
</html>
************************** USUARIO LOGADO.PHP **********************************
<?php
include("seguranca.php"); // Inclui o arquivo com o sistema de segurança
protegePagina(); // Chama a função que protege a página
?>
<?php
// A sessão precisa ser iniciada em cada página diferente
if (!isset($_SESSION)) session_start();
?>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link href="css/bootstrap.min.css" rel="stylesheet">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</head>
<body>
<div class="container" style="border-top: 60px solid #fff; border-left: 60px solid #fff; ">
<div class="row">
<div class="span12">
<div class="panel panel-default">
<div class="panel-body">
<img src="img/restrito.jpg" width="200" height="45"/>
<a href="logout.php" title="Logout" style="margin-left:600px;">
<img src="img/logout-gray.png" width="24" height="24"></a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="span12">
<table class="table table-striped table-bordered">
<thead>
<tr>
<th>Nome</th>
<th>Endereco de Email</th>
<th>Numero de Celular</th>
<th>Acao</th>
</tr>
</thead>
<tbody>
<?php
include 'paginator.php';
include 'database.php';
$pdo = Database::connect();
$paginator = new Paginator();
$sql = "SELECT count(*) FROM customers ";
$paginator->paginate($pdo->query($sql)->fetchColumn());
$sql = "SELECT * FROM customers ";
$query = isset($_GET['query'])?('%'.$_GET['query'].'%'):'%';
$sql .= "WHERE name LIKE :query OR email LIKE :query OR mobile LIKE :query ";
$start = (($paginator->getCurrentPage()-1)*$paginator->itemsPerPage);
$length = ($paginator->itemsPerPage);
$sql .= "ORDER BY id DESC limit :start, :length ";
$sth = $pdo->prepare($sql);
$sth->bindParam(':start',$start,PDO::PARAM_INT);
$sth->bindParam(':length',$length,PDO::PARAM_INT);
$sth->bindParam(':query',$query,PDO::PARAM_STR);
$sth->execute();
foreach ($sth->fetchAll(PDO::FETCH_ASSOC) as $row) {
echo '<tr>';
echo '<td>'. $row['name'] . '</td>';
echo '<td>'. $row['email'] . '</td>';
echo '<td>'. $row['mobile'] . '</td>';
echo '<td width=250>';
echo '<a class="btn" href="ler.php?id='.$row['id'].'">Visualizar</a>';
echo ' ';
echo '<a class="btn btn-success" href="alterar.php?id='.$row['id'].'">Alterar</a>';
echo ' ';
echo '</td>';
echo '</tr>';
}
Database::disconnect();
?>
</tbody>
</table>
<?php
echo $paginator->pageNav();
?>
</div>
</div>
</div> <!-- /container -->
</body>
</html>
*********************************** SEGURANCA.PHP *****************************************
<?php
// Configurações
// ==============================
$_SG['conectaServidor'] = true; // Abre uma conexão com o servidor MySQL?
$_SG['abreSessao'] = true; // Inicia a sessão com um session_start()?
$_SG['caseSensitive'] = false; // Usar case-sensitive? Onde 'thiago' é diferente de 'THIAGO'
$_SG['validaSempre'] = true; // Deseja validar o usuário e a senha a cada carregamento de página?
// Evita que, ao mudar os dados do usuário no banco de dado o mesmo contiue logado.
$_SG['servidor'] = 'localhost'; // Servidor MySQL
$_SG['usuario'] = 'root'; // Usuário MySQL
$_SG['senha'] = 'root'; // Senha MySQL
$_SG['banco'] = 'crud_tutorial'; // Banco de dados MySQL
$_SG['paginaLogin'] = 'login.php'; // Página de login
$_SG['tabela'] = 'customers'; // Nome da tabela onde os usuários são salvos
// ==============================
// ======================================
// ~ Não edite a partir deste ponto ~
// ======================================
// Verifica se precisa fazer a conexão com o MySQL
if ($_SG['conectaServidor'] == true) {
$_SG['link'] = @mysql_connect($_SG['servidor'], $_SG['usuario'], $_SG['senha']) or die("MySQL: Não foi possível conectar-se ao servidor [".$_SG['servidor']."].");
mysql_select_db($_SG['banco'], $_SG['link']) or die("MySQL: Não foi possível conectar-se ao banco de dados [".$_SG['banco']."].");
}
// Verifica se precisa iniciar a sessão
if ($_SG['abreSessao'] == true)
session_start();
/**
* Função que valida um usuário e senha
*
* @param string $usuario - O usuário a ser validado
* @param string $senha - A senha a ser validada
*
* @return bool - Se o usuário foi validado ou não (true/false)
*/
function validaUsuario($usuario, $senha) {
global $_SG;
$cS = ($_SG['caseSensitive']) ? 'BINARY' : '';
// Usa a função addslashes para escapar as aspas
$nusuario = addslashes($usuario);
$nsenha = addslashes($senha);
// Monta uma consulta SQL (query) para procurar um usuário
$sql = "SELECT `id`, `name`, `nivel` FROM `".$_SG['tabela']."` WHERE ".$cS." `usuario` = '".$nusuario."' AND ".$cS." `senha` = '".$nsenha."' LIMIT 1";
$query = mysql_query($sql);
$resultado = mysql_fetch_assoc($query);
// Verifica se encontrou algum registro
if (empty($resultado)) {
// Mensagem de erro quando os dados são inválidos e/ou o usuário não foi encontrado
echo "<script>alert('Login Invalido');window.location='login.php'</script>"; exit;
// Nenhum registro foi encontrado => o usuário é inválido
return false;
} else {
// Definimos tres valores na sessão com os dados do usuário
$_SESSION['usuarioID'] = $resultado['id']; // Pega o valor da coluna 'id do registro encontrado no MySQL
$_SESSION['usuarioNome'] = $resultado['name']; // Pega o valor da coluna 'nome' do registro encontrado no MySQL
$_SESSION['usuarioNivel'] = $resultado['nivel']; // Pega o valor da coluna 'nivel' do registro encontrado no MySQL
if ($resultado['nivel'] == 1) {
header("Location:index.php");
} else if ($resultado['nivel'] == 2) {
header("Location:index1.php");
}
// Verifica a opção se sempre validar o login
if ($_SG['validaSempre'] == true) {
// Definimos dois valores na sessão com os dados do login
$_SESSION['usuarioLogin'] = $usuario;
$_SESSION['usuarioSenha'] = $senha;
}
return true;
}
}
/**
* Função que protege uma página
*/
function protegePagina() {
global $_SG;
if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {
// Não há usuário logado, manda pra página de login
expulsaVisitante();
} else if (!isset($_SESSION['usuarioID']) OR !isset($_SESSION['usuarioNome'])) {
// Há usuário logado, verifica se precisa validar o login novamente
if ($_SG['validaSempre'] == true) {
// Verifica se os dados salvos na sessão batem com os dados do banco de dados
if (!validaUsuario($_SESSION['usuarioLogin'], $_SESSION['usuarioSenha'])) {
// Os dados não batem, manda pra tela de login
expulsaVisitante();
}
}
}
}
/**
* Função para expulsar um visitante
*/
function expulsaVisitante() {
global $_SG;
// Remove as variáveis da sessão (caso elas existam)
unset($_SESSION['usuarioID'], $_SESSION['usuarioNome'], $_SESSION['usuarioLogin'], $_SESSION['usuarioSenha']);
// Manda pra tela de login
header("Location: ".$_SG['paginaLogin']);
}
**************************** VALIDA.PHP ***************************************
<?php
// Inclui o arquivo com o sistema de segurança
require_once("seguranca.php");
// Verifica se um formulário foi enviado
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
// Salva duas variáveis com o que foi digitado no formulário
// Detalhe: faz uma verificação com isset() pra saber se o campo foi preenchido
$usuario = (isset($_POST['usuario'])) ? $_POST['usuario'] : '';
$senha = (isset($_POST['senha'])) ? $_POST['senha'] : '';
// Utiliza uma função criada no seguranca.php pra validar os dados digitados
if (validaUsuario($usuario, $senha) == true) {
// O usuário e a senha digitados foram validados, manda pra página interna
// Redireciona o visitante de acordo com o nivel
if ($resultado['nivel'] == 1) {
header("Location:index.php");
} else if ($resultado['nivel'] == 2) {
header("Location:index1.php");
}
//header("Location: index.php");
} else {
// O usuário e/ou a senha são inválidos, manda de volta pro form de login
// Para alterar o endereço da página de login, verifique o arquivo seguranca.php
expulsaVisitante();
}
}
Obrigada desde já quem puder me ajudar
erro no codigo
Link para o comentário
Compartilhar em outros sites
15 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.