Ver Mensaje Individual
  #8 (permalink)  
Antiguo 30/08/2006, 20:28
califa010
 
Fecha de Ingreso: enero-2006
Ubicación: Buenos Aires, Argentina
Mensajes: 299
Antigüedad: 18 años, 4 meses
Puntos: 5
Buenas,

Cita:
Respecto a lo de hacerlo en "PHP estructurado", no estoy muy de acuerdo. Creo que hacerlo OO no es mucho mas dificil.
Coincido en que escribir una clase es relativamente simple (o no mucho más complicado que hacer lo mismo "estructurado"; al fin y al cabo estás metiendo funciones dentro de clases; si sabés escribir funciones, la sintaxis de objetos en sí no cambia mucho). Diseñar algo orientado a objetos es la parte complicada, que requiere de un conocimiento más profundo y experiencia. Digo, para hacer algo realmente orientado objetos, reutilizable, escalable, más fácil de mantener y demás, aplicando patrones, herencia, composición, etc, etc. Así que en este caso, si querés hacerlo con objetos, no creo que te cambie mucho el panorama (de todas maneras podrías hacerlo primero "estructurado" y después adaptarlo, pero como prefieras).

La verdad, no veo nada demasiado avanzado en cuanto a sql. Estás haciendo un insert, un select y un delete, todo sobre una sola tabla.

Pero, por si te da una pista:

SELECT COUNT(*) AS Total
FROM mensajes ;

Esto te devuelve una tabla con una columna, "Total", y una sola fila, que tiene, justamente, el total de registros de la tabla. Con ese dato, podés saber si tenés que borrar algún registro o no (si es mayor que 20, en tu ejemplo).

Sólo en ese caso, pasás a:

DELETE FROM mensajes
ORDER BY id_mensaje
LIMIT 1;

Acá lo que estás haciendo es ordenar la tabla mensajes según el id_mensaje (que es una clave primaria, autonumérica), y borrás sólo un registro (LIMIT 1), el primero. Si no usaras LIMIT 1, estarías borrando todos.

Lo que tendrías que hacer, entonces, es integrar esas consultas a la parte php, ya sea "estructurado" o con objetos.

Suerte
Califa

Última edición por califa010; 30/08/2006 a las 20:34