Jump to content

[Resolvido] Eliminar e Editar não funcionam


Recommended Posts

Posted

Bom dia,

Eu estou a trabalhar num backoffice onde tenho de fazer gestao de utilizadores mas não entra no $_GET.

<!------------------------------------>
  <script type="text/javascript">
   function confirmation() {
 var answer = confirm("Delete Record?")
 if (!answer)
 {	 
  window.location = "users.php";
 }
 else
 {
    window.location = "remover_user.php?id=<?php echo $row_users['id_utilizador']; ?>";
 }
   }
  </script>
  <!------------------------------------>

(.....)
<td width="5%">
	 <a href="edit_user.php?id=<?php echo $row_users['id_utilizador']; ?>">Editar</a>
  </td>

  <td width="5%">
   <a href="#" onclick='confirmation()'>Remover</a>
  </td>

edit.php:

<?PHP
include 'db_connect.php';
session_start();
if (isset($_GET['id_utilizador']))
{
$sel_id = "SELECT * FROM utilizadores WHERE id_utilizador='".$_GET['id_utilizador']."'";
$ident = mysql_query($sel_id, $connect);
$row_id = mysql_fetch_assoc($ident);
?>
<html>
<head>
  <title>Administração - Editar Utilizador</title>
</head>
<body style="color:#FFFFFF;" bgcolor="#666666">
<form action="" method="post">
  <table >
   <tr>
  <td align="right">
   Utilizador:
  </td>

  <td>
   <input value="<?php echo $row_users['username'] ?>" type="text" name="user">
   </input>
  </td>
   </tr>

   <tr height="10px"></tr>

   <tr>
  <td align="right" valign="top">
   Password:
  </td>

  <td>
   <input value="<?php echo $row_users['password'] ?>" type="password" name="pass">
   </input>
  </td>
   </tr>

   <tr>
  <td></td>

  <td>
   <input type="submit" name="update" value="Editar Informação" />
   <a href="admin.php"><input type="button" name="update" value="Voltar"/></a>
  </td>
   </tr>
  </table>
</form>
</body>
</html>
<?php
if (isset($_POST['update']))
{
  $user=$_POST['user'];
  $pass=$_POST['pass'];
  $update_info="UPDATE utilizadores
   SET username='".$user."', password='".$pass."'
   WHERE id='".$_GET['id_utilizador']."'";
  $info=mysql_query($update_info, $connect);

  if (!$info)
  {
 echo '<script>alert("Erro na edição devido a um erro no sistem. Tente mais tarde");
  location.href="users.php"<script>';
  }
  else
  {
 echo '<script>alert("Informação editada com sucesso.");
  location.href="users.php";</script>';
  }
}
}
?>

remover_user.php

<?php
include 'db_connect.php';
if (isset($_GET['id_utilizador']))
{
$id=$_GET['utilizador'];
$delete = "DELETE FROM utilizadores WHERE id_utilizador='".$id."'";
$resultado = mysql_query($delete, $connect) or die(mysql_error());

header ('Location: users.php');
}
?>

Alguem me ajuda, sff?

Obrigado,

PF2G

Posted

edit.php:

<?PHP
include 'db_connect.php';
session_start();
if (isset($_GET['id_utilizador']))
{
$sel_id = "SELECT * FROM utilizadores WHERE id_utilizador='".$_GET['id_utilizador']."'";
$ident = mysql_query($sel_id, $connect);
$row_id = mysql_fetch_assoc($ident);
?>
<html>
<head>
  <title>Administração - Editar Utilizador</title>
</head>
<body style="color:#FFFFFF;" bgcolor="#666666">
<form action="" method="post">
  <table >
   <tr>
  <td align="right">
   Utilizador:
  </td>

  <td>
   <input value="<?php echo $row_users['username'] ?>" type="text" name="user">
   </input>
  </td>
   </tr>

Mas é $row_id ou $row_users? ???

What have you tried?

Não respondo a dúvidas por PM

A minha bola de cristal está para compor; deve ficar pronta para a semana.

Torna os teus tópicos mais atractivos e legíveis usando a tag CODE para colorir o código!

Posted

Mas é $row_id ou $row_users? ???

tens razao mas mesmo assim continua sem entrar no if (isset($_GET['...']))

<?PHP
include 'db_connect.php';
session_start();
if (isset($_GET['id_utilizador']))
{
$sel_users = "SELECT * FROM utilizadores WHERE id_utilizador='".$_GET['id_utilizador']."'";
$users = mysql_query($sel_users, $connect);
$row_users = mysql_fetch_assoc($users);
?>
<html>
<head>
  <title>Administração - Editar Utilizador</title>
</head>
<body style="color:#FFFFFF;" bgcolor="#666666">
<form action="" method="post">
  <table >
   <tr>
  <td align="right">
   Utilizador:
  </td>

  <td>
   <input value="<?php echo $row_users['username'] ?>" type="text" name="user">
   </input>
  </td>
   </tr>

   <tr height="10px"></tr>

   <tr>
  <td align="right" valign="top">
   Password:
  </td>

  <td>
   <input value="<?php echo $row_users['password'] ?>" type="password" name="pass">
   </input>
  </td>
   </tr>

   <tr>
  <td></td>

  <td>
   <input type="submit" name="update" value="Editar Informação" />
   <a href="admin.php"><input type="button" name="update" value="Voltar"/></a>
  </td>
   </tr>
  </table>
</form>
</body>
</html>
<?php
if (isset($_POST['update']))
{
  $user=$_POST['user'];
  $pass=$_POST['pass'];
  $update_info="UPDATE utilizadores
   SET username='".$user."', password='".$pass."'
   WHERE id_utilizador='".$_GET['id_utilizador']."'";
  $info=mysql_query($update_info, $connect);

  if (!$info)
  {
 echo '<script>alert("Erro na edição devido a um erro no sistem. Tente mais tarde");
  location.href="users.php"<script>';
  }
  else
  {
 echo '<script>alert("Informação editada com sucesso.");
  location.href="users.php";</script>';
  }
}
}
else
{
echo 'ESTOU AQUI';
}
?>
Posted (edited)

então tend de fazer $_GET['id'];

id não existe eu é que escrevi id, pq a coluna é id_utilizador.

Eu ja reparei que é um problema de sql, no qual tenho dificuldades...e alterei umas coisas no users.php e corre bem, mas ainda não entra no GET, não sei pq. Eu faço o mesmo trajecto noutro ficheiro e funciona so nos utilizadores é que não.

<?PHP
include 'db_connect.php';
session_start();

$query_users="SELECT * FROM utilizadores";
$users=mysql_query($query_users, $connect);
$row_users=mysql_fetch_assoc($users);
?>
<html>
 <head>
  <title>Adminstração - Utilizadores</title>
 </head>
 <body style="color:#000000;" bgcolor="#666666">
  <br/>
  <br/>
  <a href="add_user.php"><input type="button" value="Adicionar Novo Utilizador"></input></a>
  <a href="admin.php"><input type="button" value="Conteúdos"></input></a>
  <br/>
  <?php
do{
 $sel_user="SELECT * FROM utilizadores WHERE id_utilizador='".$row_users['id_utilizador']."'";
 $user=mysql_query($sel_user, $connect);
 $list_user=mysql_fetch_assoc($user);
  ?>
<table width="70%" style="border:2px solid #000000; text-align:center;" align="center">
<tr style="border:3px solid #000000; background:#FFFFFF;">
 <td width="15%">
  Utilizador
 </td>
 <td width="10%">

 </td>
 <td width="5%">

 </td>
</tr>

<tr style="border:3px solid #000000; background:#FFFFFF;">
 <td width="15%">
  <?PHP echo $list_user['username']; ?>
 </td>
 <?PHP
  if (!$row_users==0)
  {
 ?>
  <td width="5%">
   <a href="edit_user.php?id=<?php echo $list_user['id_utilizador']; ?>">Editar</a>
  </td>

  <td width="5%">
   <a href="#" onclick='confirmation()'>Remover</a>
  </td>

  <!------------------------------------------>
   <script type="text/javascript">
	function confirmation() {
	 var answer = confirm("Tem a certeza que quer eliminar o utilizador?")
	 if (!answer)
	 {	
	  window.location = "users.php";
	 }
	 else
	 {
		window.location = "remover_user.php?id=<?php echo $list_user['id_utilizador']; ?>";
	 }
	}
   </script>
  <!------------------------------------------>
 <?PHP
  ;}
  else
  {}
 ?>
</tr>
  </table>
 <?PHP
 } while ($row_users=mysql_fetch_assoc($users));
 ?>
</body>
</html>
Edited by PF2G
Posted

@PF2G

A partir de agora usa as tags code com o geshi.

Quando for php escreve (dentro de "[]"):

Para php: code=php

Para javascript: code=javascript

Para CSS: code=css

Para html: code=html4strict

"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Posted

@PF2G quando fazes $_GET[] é para ires buscar qualquer variavél ao url não tem nada a ver com o sql... se a variavel id_utilizador não existe no url ele nunca vai entrar no if

É isso @MASNathan, sinceramente nunca tinha percebido muito bem o $_GET :S

Obrigado pela ajuda, amigo 😉

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.