Jump to content

[Resolvido] Problema Eliminar


PF2G
 Share

Recommended Posts

Boas,

eu estou a tentar eliminar registos mas não consigo, dá-me mensagem de sucesso, mas não me eliminar.

Alguem me pode ajudar?

<?php
include("../../connection/database.php");
 if (!isset($_SESSION)) {
  session_cache_limiter( false );
  session_start();
 }

 $id=$_REQUEST['id'];

 if(isset($id)){
  $result=mysql_query("SELECT id_produto FROM produtos WHERE id_produto=$id");
  $row=mysql_fetch_array($result);

  $result=mysql_query("DELETE FROM produtos WHERE id_produto=$id;");

  if($result){
   $_SESSION['admin_note_type']="success";
   $_SESSION['admin_message']="O registo foi eliminado com sucesso.";
  }else{
   $_SESSION['admin_note_type']="error";
   $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo.";
  }

 }else{
   $_SESSION['admin_note_type']="error";
   $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo. O registo não foi encontrado.";
 }
?>
Link to comment
Share on other sites

Com o select, não?

Eu seleciono o id_produto=$id.

<?php
include("../../connection/database.php");
 if (!isset($_SESSION)) {
  session_cache_limiter( false );
  session_start();
 }

 $id=$_REQUEST['id'];

 $result=mysql_query("SELECT id_produto FROM produtos WHERE id_produto=$id");
 $row=mysql_fetch_array($result);
 if($result){
  $result=mysql_query("DELETE FROM produtos WHERE id_produto='".$row['id_produto']."'");

  if($result){
$_SESSION['admin_note_type']="success";
$_SESSION['admin_message']="O registo foi eliminado com sucesso.";
  }else{
$_SESSION['admin_note_type']="error";
$_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo.";
  }

 }else{
$_SESSION['admin_note_type']="error";
$_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo. O registo não foi encontrado.";
 }
Edited by PF2G
Link to comment
Share on other sites

Uma dica:

$id=$_REQUEST['id'];

Se sabes que vem por POST troca o $_REQUEST por $_POST. Se vem por GET troca por $_GET.

Se o valor é numérico (presumo que sim) coloca (int)$_GET['id'];

Outra coisa...presumo que isto

$result=mysql_query("SELECT id_produto FROM produtos WHERE id_produto=$id");
$row=mysql_fetch_array($result);

Seja para verificares se o teu produto existe, certo? Então sugiro esta pequena alteração:

<?php
include("../../connection/database.php");
if (!isset($_SESSION)) {
session_cache_limiter( false );
session_start();
}
$id=$_REQUEST['id'];
$result=mysql_query("SELECT id_produto FROM produtos WHERE id_produto=$id");

if($result){
$result=mysql_query("DELETE FROM produtos WHERE id_produto=$id'");
if($result){
 $_SESSION['admin_note_type']="success";
 $_SESSION['admin_message']="O registo foi eliminado com sucesso.";
}else{
 $_SESSION['admin_note_type']="error";
 $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo.";
}

}else{
 $_SESSION['admin_note_type']="error";
 $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo. O registo não foi encontrado.";
}
?>

Podes por exemplo fazer um echo "SELECT id_produto FROM produtos WHERE id_produto=$id"; e copiar/colar directamente para o editor de mysql e verificar se retorna alguma coisa....

Edited by ruimcosta

Abraços e beijinhos,Rui Costa

Link to comment
Share on other sites

nem mensage aparece:

<?php
include("../../connection/database.php");
  if (!isset($_SESSION)) {
   session_cache_limiter( false );
   session_start();
  }
  $id=(int)$_GET['id'];
  $result=mysql_query("SELECT id_produto FROM produtos WHERE id_produto=$id") or die(mysql_error());
  $row=mysql_fetch_assoc($result);

  if($result){
   $result=mysql_query("DELETE FROM produtos WHERE id_produto='".$row['id_produto']."'") or die(mysql_error());
 if($result){
   $_SESSION['admin_note_type']="success";
   $_SESSION['admin_message']="O registo foi eliminado com sucesso.";
 }else{
   $_SESSION['admin_note_type']="error";
   $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo.";
 }

  }else{
  $_SESSION['admin_note_type']="error";
  $_SESSION['admin_message']="Ocorreu um erro ao eliminar o registo. O registo não foi encontrado.";
  }
?>
Link to comment
Share on other sites

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
 Share

×
×
  • 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.