Foros del Web » Programando para Internet » PHP »

include(); que solo se genere una vez al dia

Estas en el tema de include(); que solo se genere una vez al dia en el foro de PHP en Foros del Web. Saludos compañeros vengo a traeros una dudilla bastante interesante... Tengo un include que tiene una serie de query.sql que "sobrecarga" un poco la web porque ...
  #1 (permalink)  
Antiguo 14/06/2011, 16:28
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Exclamación include(); que solo se genere una vez al dia

Saludos compañeros vengo a traeros una dudilla bastante interesante...

Tengo un include que tiene una serie de query.sql que "sobrecarga" un poco la web porque es una query(SQL) un poco "pesada"

El caso es que me han hablado que es posible cargar un "modulo" es decir un include(); solo X veces al dia y que este se actualize solo X veces al dia.

Lo que quiero decir es....

¿Es posible que mi include(); que tengo solo lo carge o lo genere una vez al dia para asi evitar que la web carge un poco lenta por este motivo? O que solo genere el include si hay algun cambio, sino que muestre uno ya creado.

No se si me explico con claridad...

un saludo
  #2 (permalink)  
Antiguo 14/06/2011, 17:07
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: include(); que solo se genere una vez al dia

si se puede pero como mostrarías los datos de la base de datos el resto del dia?

el siguiente ejemplo haría tu include cada 3 horas (a las 00, 03, 06, 09, 12, 15, 18 y 21)

if(date(H)%3==0) include("super_query.php");

se ejecuta durante toda la hora por si ocurre el caso de que ningún usuario entra en mucho rato
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #3 (permalink)  
Antiguo 14/06/2011, 17:32
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

Cita:
Iniciado por stramin Ver Mensaje
si se puede pero como mostrarías los datos de la base de datos el resto del dia?

el siguiente ejemplo haría tu include cada 3 horas (a las 00, 03, 06, 09, 12, 15, 18 y 21)

if(date(H)%3==0) include("super_query.php");

se ejecuta durante toda la hora por si ocurre el caso de que ningún usuario entra en mucho rato
No no no, ves no me he explicado bien...

quiero decir... que quiero que se vea el include(); SIEMPRE

pero solo quiero que genere la query o haga la sentencia 2 veces al dia para que no cada vez que se mete una persona tenga que hacer la sentencia directemnte por el servidor la hace y crea el contenido generado por la query...

¿es posible?

Saludos
  #4 (permalink)  
Antiguo 14/06/2011, 17:51
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: include(); que solo se genere una vez al dia

si se puede

http://phplens.com/lens/adodb/docs-a...m#cacheexecute


Código PHP:
Ver original
  1. $conn->cacheSecs = 3600*24; // cache 24 hours
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #5 (permalink)  
Antiguo 14/06/2011, 18:01
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

Cita:
Iniciado por mogurbon Ver Mensaje
si se puede

http://phplens.com/lens/adodb/docs-a...m#cacheexecute


Código PHP:
Ver original
  1. $conn->cacheSecs = 3600*24; // cache 24 hours
ver eso es exactamente lo que necesitaba gracias por la info compañero!
La he estado revisando, pero se puede hacer eso para un include?

es decir como le paso el "cache" para un include?

¿?

regards
  #6 (permalink)  
Antiguo 15/06/2011, 06:00
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

any news?

regards
  #7 (permalink)  
Antiguo 15/06/2011, 06:17
Avatar de chwc  
Fecha de Ingreso: julio-2008
Ubicación: Buenos Aires ! :D
Mensajes: 814
Antigüedad: 16 años, 3 meses
Puntos: 103
Respuesta: include(); que solo se genere una vez al dia

Si no podes generarlo una vez cada dia, guardar la fecha de creacion en una linea de sql, y luego guardar lo que se genero en otra linea, para poder levantarlo facilmente
  #8 (permalink)  
Antiguo 15/06/2011, 07:19
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

Cita:
Iniciado por chwc Ver Mensaje
Si no podes generarlo una vez cada dia, guardar la fecha de creacion en una linea de sql, y luego guardar lo que se genero en otra linea, para poder levantarlo facilmente
como como como? no entendi exactamente que quieres decir...

de todas formas +1 karma gracias ;)
  #9 (permalink)  
Antiguo 15/06/2011, 07:57
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: include(); que solo se genere una vez al dia

yo tampoco le entendí a chwc, creo que mogurbon se merecía más ese karma.

en cuanto a hacerlo en un include, por que no? solo pones la instrucción en el archivo incluido :)
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D
  #10 (permalink)  
Antiguo 15/06/2011, 08:32
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

Cita:
Iniciado por stramin Ver Mensaje
yo tampoco le entendí a chwc, creo que mogurbon se merecía más ese karma.

en cuanto a hacerlo en un include, por que no? solo pones la instrucción en el archivo incluido :)
Y como le paso la instruccion al include? =S porque no veo la opcion o la manera... necesito un "empujoncito" y luego ya lo adapto todo

Ya le he dado a el tb Karma...
la cosa es k he intentado cachear toda mi pagina mediante diversos sitemas que he encontrado por ahi...

como este: http://www.phpclasses.org/package/67...-in-files.html

Y el problema es k no me cachea bien.. faltan partes del codigo (html cache) y por lo tanto descuadra el portal...
Por ejemplo me lo deja asi: http://www.territoriodd.com/cache/cachefileX.html y no se porque

mi portal al ser 100% DINAMICO tarda un poco en cargar... ¿como podria optimizarlo?

mi portal: www.territoriodd.com

Última edición por CBeneyto; 15/06/2011 a las 08:46
  #11 (permalink)  
Antiguo 15/06/2011, 12:27
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: include(); que solo se genere una vez al dia

jajaja se me hace que no ahonde chido en lo de adodb te voy a dar un ejemplo , es cosa de que lo adaptes a tus necesidades

aqui esta el manual en español para cualquier duda de adodb

http://www.lacorona.com.mx/fortiz/ad...s-adodb-es.htm

la liga de donde lo puedes descargar

http://adodb.sourceforge.net/


y el ejemplo , ojo es cosa de que lo adaptes a tu include


Código PHP:
<?
include_once('adodb/adodb.inc.php');#incluyes adodb

/*******parametros para conectar tu base de datos****************/
$myServer "xxxxx";
$myUser "xxxx";
$myPass "xxxx";
$base   "xxxx";

/*********creacion del objeto adodb y conexion con la base de datos*****************/
$db =& ADONewConnection('mysql');
$db->Connect($myServer$myUser$myPass$base);
/***************definimos el tipo de resultset que queremos , en este caso un array asociativo************************/
define('ADODB_FETCH_ASSOC',2);
define('ADODB_FETCH_BOTH',3); 
$ADODB_FETCH_MODE ADODB_FETCH_ASSOC;

$ADODB_CACHE_DIR 'la ruta donde se generara el php compilado';#puede ser cualquier ruta solo debe tener permisos de escritura

$db->cacheSecs 3600*24# tiempo de duracion de el cache para las consultas con cache , en este caso serian 24 hrs 
$querymalevolo="select * from google";
$rs $db->CacheExecute($querymalevolo);



 <? if (!
$rs){ 
            print 
$rs->ErrorMsg();
    }else{
        while (!
$rs->EOF) {?>
            echo $rs->fields["name"]?>
              
            <? 
            $rs
->MoveNext();
        }
    }


?>
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #12 (permalink)  
Antiguo 15/06/2011, 12:35
Avatar de CBeneyto  
Fecha de Ingreso: noviembre-2010
Ubicación: Valencia
Mensajes: 135
Antigüedad: 14 años
Puntos: 7
Respuesta: include(); que solo se genere una vez al dia

muchas gracias por el ejemplo... al menos podré ir tirando y gracias por el enlace en ESP!

un saludo +1karma
  #13 (permalink)  
Antiguo 15/06/2011, 13:06
 
Fecha de Ingreso: enero-2011
Ubicación: DF
Mensajes: 898
Antigüedad: 13 años, 9 meses
Puntos: 155
Respuesta: include(); que solo se genere una vez al dia

Cita:
Iniciado por CBeneyto Ver Mensaje
muchas gracias por el ejemplo... al menos podré ir tirando y gracias por el enlace en ESP!

un saludo +1karma
jejeje avente codigo a lo wey
este pedazo de codigo es asi pero pos en el manual viene mas chido


Código PHP:
if (!$rs){ 
            print 
$rs->ErrorMsg();
    }else{
        while (!
$rs->EOF) {
            echo 
$rs->fields["name"]
              
             
            
$rs->MoveNext();
        }
    } 
y como te digo la mejor forma de dar las gracias es posteando tu respuesta si solucionas tu problema para cuando alguien mas lo necesite lo halle
__________________
No me interesan ni las gracias ni los karmas , pero si que se genere conocimiento, si se dio con la respuesta por favor confirmalo
  #14 (permalink)  
Antiguo 15/06/2011, 13:21
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: include(); que solo se genere una vez al dia

pensaba que necesitarían ayuda pero veo que no será necesario.

muy buen soporte de parte de mogurbon, te doy karma aunque digas que no quieres XD

en realidad te doy karma para que la gente que entre a preguntar sepa que tu eres de los jedis
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D

Etiquetas: include, query
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 09:07.