Jump to content


Photo

Editando Usuário


  • Faça o login para participar
7 replies to this topic

#1 rogeriodias

rogeriodias

    Turista

  • Usuários
  • 37 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte-MG
  • Interesses:Programação, Música, Carros

Posted 04/11/2011, 11:05

Amigos, estou atravessando alguns problemas na implantação de um sistema.
No sistema existe a opção de alterar usuário cadastrado, porém, após fazer a alteração e gravar, o sistema atualiza e fica logado no usuário que eu alterei.
Alguem pode me ajudar a consertar isso?
Abaixo seguem os códigos da página editar.php e salvaedicao.php


editar.php
<?php
session_start();
if (!isset($_SESSION["login"])  ||  !isset($_SESSION["senha"]) || ($_SESSION["nivel"] <> 2))
{
header("location: ../../formulario.php");	exit;}
$id = isset($_SESSION["id"]);
?>
<?php
include_once "../../../include/config.php";
$id = $_GET["id"];
$dados=mysql_fetch_array(mysql_query("select * from usuarios where id = $id"));
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="stylesheet" type="text/css" href="../../../css-geral.css"/>
<title>Alteração de senha</title>
<style type="text/css">
body {
	background-color: #f2f5f7;
}
</style>
</head>
<body style="margin:0px">
<td align="center"><div align="left"><? include "../../../top.php"; ?></div></td>
  <p>&nbsp;</p>
<p>
</p>
<table width="400" border="0" align="center" cellpadding="0" cellspacing="0">
  <tr>
    <th align="left" scope="col"><span class="gridbold1">Editar Usu&aacute;rios</span></th>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
  </tr>
  </table>
  <form id="form1" name="form1" method="post" action="salvaedicao.php">
  <input type="hidden" name="id" value="<?php echo $id; ?>" />
<table width="400" border="0" align="center" cellpadding="2" cellspacing="2" id="123">
  <tr>
    <td align="left"><span class="grid">N&ordm;</span></td>
    <td align="left"><input name="txtId" type="text" class="campo" value="<?PHP echo $dados['id']; ?>" /></td>
  </tr>
  <tr>
    <td width="131" align="left"><span class="grid">Nome</span></td>
    <td width="200" align="left"><input name="txtNome" type="text" class="campo" value="<?PHP echo $dados['nomeusuario']; ?>" /></td>
  </tr>
  <tr>
    <td align="left" class="grid">Nome Completo</td>
    <td align="left"><input name="txtNomecompleto" type="text" class="campo" value="<?PHP echo $dados['nomecompleto']; ?>" /></td>
  </tr>
  <tr>
    <td align="left" class="grid">Cargo</td>
    <td align="left"><select name="txtCargo" class="estiloform" id="txtCargo">
      <option value="<?PHP echo $dados['cargo']; ?>" selected="selected"><?PHP echo $dados['cargo']; ?></option>
      <option value="Agente">Agente</option>
      <option value="Atendente">Atendente</option>
      <option value="Gerente">Gerente</option>
      <option value="T&eacute;cnico">T&eacute;cnico</option>
    </select></td>
  </tr>
  <tr>
    <td align="left" class="grid">Sexo</td>
    <td align="left"><select name="txtSexo" class="estiloform" id="txtCargo2">
      <option value="<?PHP echo $dados['sexo']; ?>" selected="selected"><?PHP echo $dados['sexo']; ?></option>
      <option value="Feminino">Feminino</option>
      <option value="Masculino">Masculino</option>
    </select></td>
  </tr>
  <tr>
    <td align="left"><span class="grid">CPF</span></td>
    <td align="left"><input name="txtCPF" type="text" class="campo" value="<?PHP echo $dados['cpf']; ?>" /></td>
  </tr>
  <tr>
    <td align="left"><span class="grid">Identidade</span></td>
    <td align="left"><input name="txtIdentidade" type="text" class="campo" value="<?PHP echo $dados['identidade']; ?>" /></td>
  </tr>
  <tr>
    <td align="left"><span class="grid">Login</span></td>
    <td align="left"><input name="txtLogin" type="text" class="campo" value="<?PHP echo $dados['login']; ?>" /></td>
  </tr>
  <tr>
    <td align="left"><span class="grid">Perfil<span class="asterisco"></span></span></td>
    <td align="left"><input name="txtNivel" type="text" class="campo" value="<?PHP echo $dados['nivel']; ?>" /></td>
  </tr>
  <tr>
    <td align="left" class="grid">Senha<span class="asterisco"></span></td>
    <td align="left" nowrap="nowrap"><input name="txtSenha" type="password" class="campo" size="30" value="<?PHP echo $dados['senha']; ?>" /></td>
  </tr>
  <tr>
    <td colspan="2" align="right">&nbsp;</td>
  </tr>
  <tr>
    <td colspan="2" align="left"><table width="300" border="0" align="left" cellpadding="0" cellspacing="0">
      <tr>
        <th width="52" align="left" valign="bottom" scope="col"><input type="submit" name="Submit" value="Gravar" style="cursor:pointer; font-family:Verdana, Geneva, sans-serif; font-size:10px" /></th>
        <th width="48" align="left" valign="bottom" scope="col"><a href="listar.php" style="border:none; text-decoration:none;">
          <input name="button2" type="button" value="Voltar" style="cursor:pointer; font-family:Verdana, Geneva, sans-serif; font-size:10px" />
        </a></th>
        <th width="448" align="left" valign="bottom" scope="col"><a href="cadastrar.php" style="border:none; text-decoration:none;">
          <input name="button" type="button" value="Novo" style="cursor:pointer; font-family:Verdana, Geneva, sans-serif; font-size:10px" />
        </a></th>
      </tr>
    </table></td>
  </tr>
</table>
</form>
<p>&nbsp;</p>
<div align="center">
  <table width="600" border="0" align="center" cellpadding="0" cellspacing="0">
    <tr>
      <th height="80" scope="col"><? include "../../footer.php"; ?></th>
    </tr>
  </table>
</div>
<p align="center">&nbsp;</p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div align="center"></div>
</body>
</html>


salvaedicao.php
<?php
session_start();
if (!isset($_SESSION["login"])  ||  !isset($_SESSION["senha"]) || ($_SESSION["nivel"] <> 2))
{
header("location: ../../formulario.php");	exit;}
?>
<?php
include_once "../../../include/config.php";
$id = $_POST["txtId"];
$nomeusuario = $_POST["txtNome"];
$nomecompleto = $_POST["txtNomecompleto"];
$cargo = $_POST["txtCargo"];
$sexo = $_POST["txtSexo"];
$cpf = $_POST["txtCPF"];
$identidade = $_POST["txtIdentidade"];
$login = $_POST["txtLogin"];
$nivel = $_POST["txtNivel"];
$senha = $_POST["txtSenha"];
$re=mysql_query("UPDATE usuarios SET id=('$id'), nomeusuario=('$nomeusuario'), nomecompleto=('$nomecompleto'), cargo=('$cargo'), sexo=('$sexo'), cpf=('$cpf'), identidade=('$identidade'), login=('$login'), nivel=('$nivel'), senha=('$senha') where id=$id");
if ($re==1) {
echo"<script>alert('Usuario Alterado com Sucesso...');</script>";
echo "<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=listar.php'>";
}
else
{
echo"<script>alert('Erro ao Alterar Usuario...');</script>";
echo "<meta HTTP-EQUIV='Refresh' CONTENT='0;URL=listar.php'>";
}
?>

Abraços a todos!

#2 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 04/11/2011, 11:35

Ola se vc usa session coloca uma session_destroy(); depois do update
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#3 rogeriodias

rogeriodias

    Turista

  • Usuários
  • 37 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte-MG
  • Interesses:Programação, Música, Carros

Posted 04/11/2011, 13:03

Coloquei o session_destroy(); depois do update mas depois de gravar o sistema deslogou e voltei para a pagina de login.

#4 jhrebuski

jhrebuski

    jhrhp

  • Usuários
  • 173 posts
  • Sexo:Não informado

Posted 04/11/2011, 13:27

Beleza, então agora você cria uma nova sessão com os dados novos, ou apenas sobrescreve os dados da sessão antiga.

Até mais.

#5 rogeriodias

rogeriodias

    Turista

  • Usuários
  • 37 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte-MG
  • Interesses:Programação, Música, Carros

Posted 04/11/2011, 13:45

Veja bem, entrei com o login de administrador e quando alterei os dados de um usuário qualquer, o sistema atualiza logado com os dados do usuário que alterei, saindo do login administrador.
Nesse caso o sistema teria que mostrar a mensagem de "Usuário alterado com sucesso" e eu teria que continuar logado como administrador.

#6 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 04/11/2011, 18:36

ai seria outro caso pq dai vc teria que verificar antes de alterar se o usuario é administrador ou um editor por exemplo....
e criar um condição para se for admin ele troque os dados e continue logado...
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook

#7 rogeriodias

rogeriodias

    Turista

  • Usuários
  • 37 posts
  • Sexo:Masculino
  • Localidade:Belo Horizonte-MG
  • Interesses:Programação, Música, Carros

Posted 05/11/2011, 19:02

Isso mesmo, o outro usuário que editei é do perfil "administrador" também. Como faria nesse caso?

#8 Diego Bezerra

Diego Bezerra

    Diego Bezerra

  • Moderadores
  • 938 posts
  • Sexo:Masculino
  • Localidade:Amazonas
  • Interesses:Iniciando no C# com MSSQL.

Posted 06/11/2011, 10:16

Ola um geito simples seria usar IF
Att.
Diego Bezerra
Agência Kernel - em Breve
Email/msn: diegobezerra@outlook.com
Facebook




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq