Foros del Web » Programando para Internet » PHP »

mensajes privados no se borran

Estas en el tema de mensajes privados no se borran en el foro de PHP en Foros del Web. hola tengo este script que lo he bajado desde esta pagina y no me funciona la opcion borrar. <? include("conexion.php"); if($accion == "borrar"){ $SQLborrar = ...
  #1 (permalink)  
Antiguo 06/10/2003, 05:51
 
Fecha de Ingreso: julio-2003
Mensajes: 20
Antigüedad: 14 años, 5 meses
Puntos: 0
mensajes privados no se borran

hola tengo este script que lo he bajado desde esta pagina y no me funciona la opcion borrar.

<?
include("conexion.php");
if($accion == "borrar"){
$SQLborrar = "DELETE FROM mensajes WHERE msgid IN(".implode(', ', $HTTP_POST_VARS['mens']).")";

mysql_query($SQLborrar);

echo "<font face=Tahoma size=2><br><b>Mensaje Borrado</b>";

} else {

$sql= mysql_query("SELECT * FROM mensajes WHERE para = '$nickUsuarioL' ORDER by msgid DESC"); //aki esta la var del sistema de JLMM
echo "<form><table width=370 cellpadding='3'>";
while ($row = mysql_fetch_array($sql) ){

$asunte = $row[asunto];
$resto = substr("$asunte", 0, 40);
$aydi = $row[msgid];
$leido = $row[leido];
if ( $row[leido] < 1 ) {
$noleido = "<img src=\"Images/sobre_cerrado.gif\">";
}else{
$noleido = "<img src=\"Images/sobre_abierto.gif\">";
}
echo "<tr><td bgcolor=#EEEEEE width=8><input type=checkbox name='mens[]' value=$aydi></td><td width=10 bgcolor=#CC6600><center>$noleido</center></td><td bgcolor=#CC6600><font color=#FFFFFF><center><i>".$row["usuario"]."</i></center></font></td><td width=55 bgcolor=#EEEEEE><a href=leer_privados2.php?id=".$row[msgid].">$resto...</a></td><td bgcolor=#EEEEEE width=130>".$row["fecha"]."</td></tr>";

}
echo "</table><br><table width=370 bgcolor=#EEEEEE align=center cellspacing=2 cellpadding=3><tr><td><input type=radio name=accion value=borrar>Borrar</td><td><input type=radio name=accion value=responder>Responder</td><td><a href=enviar_privados.php>Enviar Mensaje</td><td><input type=\"submit\" value=\"Enviar\" class=\"boton\"></td></table></form>";

}
?>

Si en la sentencia de borrar escribo esto funciona
$SQLborrar = "DELETE FROM mensajes WHERE msgid =1 o 2 o el que sea";
mysql_query($SQLborrar);

Que es lo que pasa? Gracias
  #2 (permalink)  
Antiguo 06/10/2003, 06:04
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 5 meses
Puntos: 16
Hola,

Realmente el codigo parece estar bien. Quitando un detalle. Y es un fallo HTML. Fijate, abres el formulario con un simple <form>. Eso quiere decir que usa el method por defecto, que es GET. Y tu luego intentas acceder a los campos del fomulario por el array POST. Asi que esta vacio.

Asi que tienes 2 opciones:

- Especificar method="POST" en el el <form> (esta es la que recomiendo.

- O recoger las variables con $HTTP_GET_VARS (o $_GET).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 06/10/2003, 09:31
 
Fecha de Ingreso: julio-2003
Mensajes: 20
Antigüedad: 14 años, 5 meses
Puntos: 0
hola josemi.
Era ese el error.
Muchas gracias.
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 01:55.