Cita:
Iniciado por Osdiwe
¿Cuando asignas el valor a la variable $publica, lo haces des de una constante? Porque si quieres asignarle el valor SI debes hacerlo entre comillas:
$publica = "SI";
De otro modo cuando en el UPDATE pones publica= '$publica' le estás asignando una variable vacía.
Además, en estas líneas creo que hay un error:
mysql_query("UPDATE clasificados SET publica='$publica' WHERE id_clasificado='$id'",$clasifica);
$res=mysql_query($sql,$clasifica);
En la primera línia supongo que quieres crear la variable $sql que utilizas en la segunda. Quedaría de la siguiente manera:
$sql = "UPDATE clasificados SET publica='$publica' WHERE id_clasificado=$id";
$res=mysql_query($sql,$clasifica);
Y otra cosa, si el campo id_clasificado es del tipo int no hace falta poner comillas simples alrededor del valor.
Y ya por último. Veo que muestras un mensaje según se ha podido publicar el mensaje o no. Creo que los deberías mostrar según el resultado de la consulta (almacenado en la variable $res) ya que $id_clasificados==$id no te asegura que se realice la consulta a la base de datos con éxito.
Prueba con los cambios y si sigue sin funcionar intenta aportar información del error.
Voy a probar lo que decis pero igual el error no esta ahi tambien probe cambiando
WHERE id_clasificado=$id"
por
WHERE id_clasificado
si hace la modificacion que quiero pero en todos los campos y no solo en el que yo deseo.
Por defecto en el formulario de para publicar los mensajes el
$publica=no, al apretar la imagen acepta los pasaria a
$publica=si.
De este modo, los usuarios verian los mensajes luego del que el administrador de el OK.
Repito esto lo logre hacer a la perfeccion pero me modifica todos los campos
PUBLICA y no unicamente el que yo deseo.