Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera,
Preciso muito da ajuda de vocês. Sou iniciante em PHP e estou desenvolvendo um sistema para continuar os estudos. Porém, um erro tem me dado um pouco de dor de cabeça. Criei uma página que somente quem tiver o nível de administrador pode acessar. Nesta página, tem uma tabela contendo todos os usuários cadastrados no site, inclusive o próprio ADM. Um dos campos da tabela tem um link que ao ser clicado redireciona para uma página (users.php) e quando essa página tem um ID especificado por exemplo: users.php?id=16, ela exibe um formulario para UPDATE dos dados do usuário. O problema, é que não consigo capturar o ID do usuário pela URL. Exemplo: estou na página users.php?id=16 beleza, ela exibe o form para editar os dados tudo certinho, mas não consigo pegar o id e colocar no WHERE.
Recebo os dados via POST e depois tento atualizar:
$att = mysql_query("UPDATE users SET nome='$nome', user='$username', nivel='$nivel' WHERE id='$id'");
Um pouco antes de tentar essa linha de comando, usei esse código para tentar capturar o ID e por ele para comparação no WHERE:
$id = $_GET['id'];
Então não consigo capturar o ID para poder atualizar os dados.
CÓDIGO COMPLETO DA PÁGINA USERS.PHP
<?php
session_start();
$userLogado = $_SESSION['user'];
$userNvLogged = $_SESSION['nivel_user'];
include("conn.php");
if(isset($_SESSION['user'])){
if($userNvLogged == 1){
$id = $_GET['id'];
$seleciona = mysql_query("SELECT * FROM users WHERE id = '$id'");
if(!mysql_num_rows($seleciona)){
}else{
$dados = mysql_fetch_array($seleciona);
$nome = $dados['nome'];
$user = $dados['user'];
$nivel = $dados['nivel'];
}
}else{
echo "<script>alert('Você não tem permissão para acessar esta área!'); history.back();</script>";
}
}else{
echo "<script>alert('Você não tem permissão para acessar esta área!'); history.back();</script>";
}
?>
<html>
<head>
<title>Painel | Editar</title>
<!-- Meta Tag's -->
<meta charset="UTF-8">
<!-- Fontes -->
<link href='[http://fonts.googleapis.com/css?family=Roboto:300'](http://fonts.googleapis.com/css?family=Roboto:300) rel='stylesheet' type='text/css'>
<!-- Estilos -->
<link rel="stylesheet" type="text/css" href="css/styleUsers.css" />
<!-- Scripts -->
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.1/jquery.validate.min.js" ></script>
</head>
<body>
<div class="box-edit">
<br />
<center><h3>Editar Dados</h3></center>
<form class='formAtt' name='form' method='post' action='?go=atualizar'>
<table>
<tr>
<td>Nome:</td>
<td><input type='text' name='nome' value='<?php echo $nome; ?>' /></td>
</tr>
<tr>
<td>Username:</td>
<td><input type='text' name='user' value='<?php echo $user; ?>' /></td>
</tr>
<tr>
<td>Nível:</td>
<td><input type='text' name='nivel' value='<?php echo $nivel; ?>' /></td>
<tr>
<td>ID:</td>
<td><input type='text' name='nivel' value='<?php echo $id; ?>' disabled /></td>
</tr>
<tr>
<td><input style='margin-left: 250%; padding: 3px 3px;' type='submit' name='submit' value='Atualizar' /></td>
</tr>
</table>
</form>
</div>
</body>
</html>
<?php
if(@$_GET['go'] == 'atualizar'){
if(isset($_POST['submit'])){
$nome = $_POST['nome'];
$username = $_POST['user'];
$nivel = $_POST['nivel'];
$att = mysql_query("UPDATE users SET nome='$nome', user='$username', nivel='$nivel' WHERE id='$id'");
echo '<div class="msgSucess"><p>Dados atualizados com sucesso!</p></div>';
}else{
echo 'Nenhum dado recebido!';
}
}
?>Carregando comentários...