Foros del Web » Programando para Internet » PHP »

creando panel de control

Estas en el tema de creando panel de control en el foro de PHP en Foros del Web. Buenas Escribo para preguntar ¿como es la mejor manera de hacer un panel de control con PHP para mi pagina? ¿como hago que por defecto ...
  #1 (permalink)  
Antiguo 17/08/2008, 14:31
 
Fecha de Ingreso: agosto-2006
Ubicación: Santiago (Chile)
Mensajes: 29
Antigüedad: 18 años, 3 meses
Puntos: 0
creando panel de control

Buenas

Escribo para preguntar ¿como es la mejor manera de hacer un panel de control con PHP para mi pagina?

¿como hago que por defecto mediante un panel de control me muestre las noticias de tal año solamente?

PD:solo necesito algunas referencias.

Eso, espero haberme explicado bien. Saludos
  #2 (permalink)  
Antiguo 17/08/2008, 14:53
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: creando panel de control

Sobre mostrar las noticias de tal año, eso es más de la base de datos que PHP. Suponiendo que lo guardes en una BD MySQL (creo que también funcionaría con cualquiera SQL en general, pero no estoy seguro), sólo debes usar la sentencia LIKE. Ejemplo:
Código:
SELECT * FROM noticias WHERE ano LIKE '2008'
Suponiendo que la tabla noticias contiene las noticias, of course, y que ano conitene únicamente el año de la notícia (no también la fecha ni la hora, sólo año), eso te daría todas las noticias de ese año.

Si son muchas usa la sentencia LIMIT para limitar la cantidad de resultados y los vas imprimiendo con un bucle for, dónde en cada iteración imprime por ejemplo 10 hasta que no queden más. Esto sólo es para ahorrar problemas como exceso de tiempo en realizar la consulta o exceso de uso de memoria y estas cosas.

Lo demás es lo mismo, ir montando el panel de control consultando las cosas en la BD o pasando parámetros por $_GET, $_POST, usar sesiones etc. Como cualquier otra cosa de una web, vamos.
__________________
Un Lannister siempre cumple sus promesas
  #3 (permalink)  
Antiguo 17/08/2008, 15:55
Avatar de DooBie  
Fecha de Ingreso: septiembre-2004
Mensajes: 1.101
Antigüedad: 20 años, 2 meses
Puntos: 71
Respuesta: creando panel de control

Cita:
Iniciado por Mort20 Ver Mensaje
Sobre mostrar las noticias de tal año, eso es más de la base de datos que PHP. Suponiendo que lo guardes en una BD MySQL (creo que también funcionaría con cualquiera SQL en general, pero no estoy seguro), sólo debes usar la sentencia LIKE. Ejemplo:
Código:
SELECT * FROM noticias WHERE ano LIKE '2008'
Suponiendo que la tabla noticias contiene las noticias, of course, y que ano conitene únicamente el año de la notícia (no también la fecha ni la hora, sólo año), eso te daría todas las noticias de ese año.

Si son muchas usa la sentencia LIMIT para limitar la cantidad de resultados y los vas imprimiendo con un bucle for, dónde en cada iteración imprime por ejemplo 10 hasta que no queden más. Esto sólo es para ahorrar problemas como exceso de tiempo en realizar la consulta o exceso de uso de memoria y estas cosas.

Lo demás es lo mismo, ir montando el panel de control consultando las cosas en la BD o pasando parámetros por $_GET, $_POST, usar sesiones etc. Como cualquier otra cosa de una web, vamos.
No hace falta que tengas en la tabla un campo solo para el año, seria una tonteria aparte de un gasto innecesario de espacio.
Si tienes en la tabla un campo fecha-hora (que es lo normal), puedes recuperar el año haciendo:
Código:
SELECT * FROM noticias WHERE YEAR(fecha)='2008';
  #4 (permalink)  
Antiguo 17/08/2008, 16:06
Avatar de Tokkara  
Fecha de Ingreso: junio-2008
Mensajes: 131
Antigüedad: 16 años, 5 meses
Puntos: 5
Respuesta: creando panel de control

Yo siempre aconsejo que las fechas se guarden en la BD usando el timestamp de UNIX, se consigue usando la funcion time(). Despues usando la funcion mktime() podremos crear busquedas mas concretas.

Código PHP:
//Noticias mayores 2008
$year mktime(0,0,0,0,0,2008);
$sql "SELECT * FROM noticias WHERE fecha > ".$year;

//Concretar mas: Mayores que Julio 2008
$year mktime(0,0,0,0,7,2008);
$sql "SELECT * FROM noticias WHERE fecha > ".$year;

//Mayores de 2006 y menores de 2008
$year1 mktime(0,0,0,0,0,2006);
$year2 mktime(0,0,0,0,0,2008);

$sql "SELECT * FROM noticias WHERE fecha > ".$year1." AND fecha < ".$year2;

//Y asi hay muchas formas y combinaciones 
Además usando después la funcion date podremos dar el formato que queramos a las fechas.
  #5 (permalink)  
Antiguo 17/08/2008, 16:34
Avatar de Mort20  
Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 141
Antigüedad: 16 años, 5 meses
Puntos: 2
Respuesta: creando panel de control

Cita:
Iniciado por DooBie Ver Mensaje
No hace falta que tengas en la tabla un campo solo para el año, seria una tonteria aparte de un gasto innecesario de espacio.
Si tienes en la tabla un campo fecha-hora (que es lo normal), puedes recuperar el año haciendo:
Código:
SELECT * FROM noticias WHERE YEAR(fecha)='2008';
Ya lo sé, sólo estaba poniendo un ejemplo. Asumiendo que no se le había ocurrido el sistema - por eso posteaba - lo más fácil para entender las cosas es con el ejemplo más sencillo posible. No digo que hacer lo tuyo sea difícil ni mucho menos, sólo que no es lo más fácil posible.
Aunque ahora que me fijo en mi ejemplo tampoco era adecuado el like (lo lógico hubiera sido la llana igualdad).
__________________
Un Lannister siempre cumple sus promesas
  #6 (permalink)  
Antiguo 17/08/2008, 20:55
 
Fecha de Ingreso: agosto-2006
Ubicación: Santiago (Chile)
Mensajes: 29
Antigüedad: 18 años, 3 meses
Puntos: 0
Respuesta: creando panel de control

Muchas gracias por las respuestas pero a lo que me refería es que, yo queiro hacer un panel de control interno como administrador de la pagina. El usuario puede modificar el año si quiere, pero si no a modificado el año, que quede con el año que yo asigne en el panel de control.

Voy a probar con sus ejemplos.

Gracias nuevamente.
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 14:09.