Foros del Web » Programando para Internet » PHP »

Borrando post de un foro

Estas en el tema de Borrando post de un foro en el foro de PHP en Foros del Web. Hola amigos, tengo creado un foro en el que está la opción de borrar los mensajes publicados, es decir, que si el autor está logueado ...
  #1 (permalink)  
Antiguo 29/04/2007, 17:15
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
Borrando post de un foro

Hola amigos, tengo creado un foro en el que está la opción de borrar los mensajes publicados, es decir, que si el autor está logueado puede visualizar en su post un enlace para que lo elimine. El enlace lo creé de esta manera:

Código PHP:
<a class="vinculo" href="droptema.php?c=<?=$c?>&id_foro=<?=$id_foro?>&idautor=<?=$idautor?>" onclick="if(!confirm('Estás apunto de eliminar este post. Estás seguro de realizar esta operación?')) return false;" title="Eliminar post"> 
    <img src="images/drop.png" alt="Eliminar post" /> 
</a>
Donde:
$c = categoría del foro
$id_foro = la id del post
$idautor = id del autor del post

Este es el archivo droptema.php
Código PHP:
<?php
    session_start
();
    include(
'config.php');
    if (!empty(
$_SESSION['usuario'])) {
        
mysql_query("DELETE FROM foros WHERE id_foro='".$_GET[id_foro]."'");
        
$resp2 mysql_query("SELECT * FROM foroscat WHERE id_cat='$c'");
        
$datos2 mysql_fetch_array($resp2);
        
$resta $datos2['numpost']-1;
        
mysql_query("UPDATE foroscat SET numpost='$resta' WHERE id_cat='$c'");
        
$resp3 mysql_query("SELECT * FROM users WHERE id='$idautor'");
        
$datos3 mysql_fetch_array($resp3);
        
$resta3 $datos3['posts']-1;
        
mysql_query("UPDATE users SET posts='$resta3' WHERE id='$idautor'"); 
        echo 
'Registro Eliminado satisfactoriamente <a class="vinculo" href="foros/">Regresar a los foros</a>';
    }else {
        echo 
"<strong>Acceso denegado.</strong>";
    }
?>
El problema que tengo con dicho script, es que fácilmente cualquier persona puede poner en la URL la dirección hacia cualquier post con cualquier id de usuario y se va a borrar y eso es lo que quiero evitar, no sé si me dejo entender. Espero que me puedan ayudar con eso, gracias de antemano.

Saludos.
  #2 (permalink)  
Antiguo 29/04/2007, 18:20
Avatar de ZydRick  
Fecha de Ingreso: febrero-2005
Ubicación: Lima
Mensajes: 750
Antigüedad: 19 años, 2 meses
Puntos: 4
Re: Borrando post de un foro

ya conseguí arreglarlo cambiado esta línea:

Código PHP:
if (!empty($_SESSION['usuario'])) { 
por esta otra

Código PHP:
if ($_SESSION['idusuario'] == $_GET['idautor']) { 
y funciona correctamente.

Saludos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:12.