![]() |
Borrar Temas Holas gente Tengo una pregunta para hacerles. Resulta que en mis noticias, el Administrador PUEDE borrarlas con libertad. Entonces, lo que quiero es que se le reste en 1 el campo Noticias Enviadas al usuario que la creo, claro. El codigo me cuesta, ya que no se como obtener quien la envio :-) Ademas, no se como hacer lo de la resta, ya que yo para restar comunmente uso esto: Código: UPDATE noticias SET cant=cant-1 WHERE id=$colnameIDSaludos y Anticipadas Gracias :policia: |
Respuesta: Borrar Temas Lo quieres hacer con php? Luego debes ejecutar primero la consulta DELETE y luego la UPDATE, previamente debes guardar en una variable php el nombre o identificador del usuario que le has borrado algo para poder usarlo en la consulta update... Otra cosa seria entrar en triggers con lo que seria el propio motor de bbdd que haria el update. Otra solución es no guardar el numero en ninguna parte y contar los post del usuari en la tabla donde los tengas guardados un indice sobre el identificador de usuario haria la consulta bastante rápida.... Quim |
Respuesta: Borrar Temas if (isset( $_POST['Submit_Pos'])) { mysql_query("UPDATE registro SET karma=karma+1 WHERE id = '$AutorTopic'"); }Muchas Gracias x la informacion Si, lo quiero hacer en PHP. Resulta que tengo un formulario en donde al pulsar el Boton, Borraria el Topico. Hasta ahi no hay problema. Ahora, debo ejecutar dos consultas juntas, la verdad en lo practico se me complica un poco... Yo uso DreamWeaver junto con PHP y MySQL, entonces me cuesta mas que si fuera solo con PHP. Yo uso esto: Código PHP: Código PHP: Mas o menos, para no complicar las cosas, quisiera saber si puedo poner algo asi: Código PHP: Gracias denuevo, y Saludos :policia: |
Respuesta: Borrar Temas Si pero antes de borrar tienes que obtener $AutorTopic o puedes forzar que te llegue como un parametro igual que te llega el $id. Código PHP: Quim |
Respuesta: Borrar Temas primero debes estar seguro de guardas el $autortopic en la tabla noticias. segundo una vez que te envies el id de la noticias a borrar haz lo siguiente: SELECT autortopic FROM noticias WHERE id = $id -----> y lo guardar en $autortopic luego DELETE FROM noticias WHERE id = $id ---->> borras la noticias luego UPDATE usuario SET mensajes=mensajes-1 WHERE id = '$AutorTopic' y liusto... si usas la tabla registro ... en vez de usuario, usa eso.. ahí eliges tu las tablas :D suerte :D |
Respuesta: Borrar Temas Les agradezco Muchisimo su tiempo y ganas de ayudarme :-) Ahora tengo una gran duda. Como les comente trabajo con Dreamweaver CS3, y creo las consultas desde su sistema de SQL avanzado. Entonces, lo que yo PUDE lograr con suerte y despues de probar, es como aumentarle uno a la cantidad de mensajes del usuario que envia una noticia, lo que me sale es averiguar 'Quien envio la noticia' para restarle a el 1, y no a todos. Entonces, se me ocurrio, enviar una ID oculta cuando se envia la noticia, y me llega perfecto. El user ID5 al enviar noticia, veo que en la noticia aparece: Enviado por el User X ID 5 (VAmos bien hasta ahi) Ahora no se que hacer con ello, lo que se me ocurrio fue hacer esto: Código PHP: Ahora, como adapto este usuario al sistema de restada de noticias y borrado de la misma? Esta bien como puse yo? Código: WHERE id = $AutorTopicSaludos y Gracias denuevo :policia: |
Respuesta: Borrar Temas Upss Puse responder en vez de Editar... Queria decir, lo que NO me sale, es obtener quien envio la noticia, desde SQL para luego decirle ¡¿Quien fue!? y asi restarle a el, y no a todos los usuarios :-D Saludos |
Respuesta: Borrar Temas WHERE id = $AutorTopic esto esta bien siempre que la variable $AutorTopic contenga el id del autor y registro.id sea el id del autor... tu sabras si en el campo id de la tabla registro tines guardado el id del autor... Estas jugando con dos id el de la noticia que borras y el id del autor, como te decia yo debes conseguir que te lleguen los dos id por parametros o como te decia fhonorato recuperarlo del registro de la noticia antes de borrarlo. Quim |
Respuesta: Borrar Temas Gracias Entiendo, lo que no me sale, es si debo poner todas las consultas SQL de la misma manera, ya sean las 3 que me dijo fhonorato, o las otras tuyas. Yo tengo listadas todas mis noticias, entonces SE cual es el ID de la noticia que quiero borrar, y Creo saber cual es el ID del autor, desde mi sistema que no se si correra. Ahora, queria saBer, cuando pulso sobre Borrar tema, automaticamente se genera la consulta esa que mostre enel segundo tema. Lo que queria, es agregarle a esa, (si es que se puede, claro) el de restar segun el usuario. Como podria modificarla? Sabiendo que el ID de la noticia se encuentra en $row_rsNoticia['id']; y el autor que la creo en $row_rsNoticia['id_autor']; ? No se como ira metido el Query de [Resta de mensajes] dentro del de [Borrado de Tema] donde el borrado de tema ya funciona bien, que es este: Código PHP: |
Respuesta: Borrar Temas Repito tiene que ser algo así y si te fijas en los comentarios (linea en naraja) entenderás lo que se esta haciendo. Si tu sistema te asegura que para cada noticia hay un id de autor luego si tienes id de notifcia tendras un id de autor, por lo tanto el if que controla los posibles errores te sirve para las dos consultas, puesto que si no hay id de noticia tampoco habrá de autor... Código PHP: Quim |
Respuesta: Borrar Temas Mil Gracias!! Funciona de lujo!!! Solo agradecerte!! :aplauso: :aplauso: P.D: Otra cosita, sabes porque me pasa, que cuando EDITO (Le hago Update) a un usuario, para que aparezcan los nuevos datos, el mismo tenga que enviar una Noticia nueva?? Yo puedo Editar las noticias, mediante el Update, pero para que se vean reflejadas en las noticias ya enviadas, debo Enviar otra nueva.. porque sera?? Saludos :policia: |
Respuesta: Borrar Temas A ver tienes claro que las cosas en la tecnologia que estas usando pasa en dos ambitos distintos (o tres)? Qualquier consulta SQL que ejecutes tiene efectos sobre la BBDD, sea un select, update, delete... eso pasa en el servidor de bbdd (1.-ambito servidor BBDD) Para ver los efectos de cualquier cosa que pase en el servidor de BBDD debes refrescar lo que estas viendo en pantalla (3.-ambito cliente, interficie de ususario). Asi si ejecutas un SELECT lo que obtienes es una copia digamos virtual de su resultado que luego tienes que recorrer con programación php para darle formato (2.-ambito servidor web) y mandarlo al cliente (3.-ambito cliente) para que se muestre en pantalla. DELETE, UPDATE y INSERT INTO tienen la particularidad de generar cambios en la BBDD pero no retornan nada. Con lo que si no haces nada más no veras su resultado. Lo normal sera haber hecho un SELECT y tener un resultado en pantalla, luego hacer una de las otras posibles operaciones (DELETE, UPDATE o INSERT INTO) estas si ha ido todo bien habran generado cambios en la BBDD pero lo que estas viendo en pantalla no es la BBDD si no un listado de su estado en el momento que has hecho el SELECT inicial... luego conclusion para obtener el nuevo listado debes ejecutar otra vez la consulta inicial SELECT y mostrarla por pantalla, ahora si mostrara el estado de la BBDD despues de los cambios realizados. Por que cuando haces el INSERT INTO de una nueva noticia aparecen los cambios que no se mostraban? Pues por que en el caso del INSERT INTO tienes definido que despues de introducir una nueva noticia esta se muestre, aún que lo parezca, no agrega la nueva noticia a la salida por pantalla si no que refresca toda la salida con lo que aparece la nueva noticia y los cambios que no se veian, repite el SELECT inicial. Conclusion para ver immediatamente los cambios producidos por un UDATE tienes que repetir el SELECT inicial. Eso lo puedes forzar de una manera similar a lo que hemos hecho con lo de reducir el numero de noticias o refrescando la pagina entera, tanto para una solucion como para la otra deberas tener guardos los paramtros que usaste en la consulta inicial para poder usar los otra vez... Quim Nota: normalmente se habla de dos ambitos o lados servidor y cliente, pero te he querido hacer notar que dentro del servidor (2.-ambito servidor web) esta la capa que genera los resultados mandando instrucciones al cliente (3.- ambito Cliente) o al servidor de BBDD (1.-ambito Servidor de BBDD). |
Respuesta: Borrar Temas Muchisiams Gracias Quim No sabes cuanto me estas ayudando, y no solo en mi proyecto, sino para mi mismo, ya que quiero aprender sobre este mundo de las Webs. Soy medio duro la verdad, me cuesta enteder a veces, es por eso que te pregunto esto, y espero no te molestes :-) Entendi lo del Select nuevo, seria como para volver a mostrar los datos Ya refrescados, actualizados digamos, no? Pero no entiendo como ponerlo? Ayer intente a lo novato, ponerlo en todos lados :-D pero no funcionaba en ningun lado! Lo probe en un sistema de Puntuacion bien sencillo que tengo, donde hay un formulario con un Boton que dice 'SUBE PUNTOS' y el codigo es: Código PHP: Código PHP: Me gustaria que me eseñes como hacerlo mediante un Nuevo ("SELECT..."); Un saludo y Gracias por todo tu tiempo :policia: |
Respuesta: Borrar Temas Trasladado de BD a PHP. Favor no poner código de programación en BD. Función de la sección de Base de Datos |
Respuesta: Borrar Temas Tienes que fijarte en como lo has heco la primera vez analiza el codigo y mira que lineas tienes que repetir.... Quim |
| La zona horaria es GMT -6. Ahora son las 23:33. |
Desarrollado por vBulletin® Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.