Problème avec Cache_Lite


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3466
Inscription: 18 Jan 2006

Problème avec Cache_Lite

Message le Lun Mar 20, 2006 21:54

Bonsoir

j'ai un p'tit soucis avec Cache_lite, je ne comprends pas, je n'ai aucun message d'erreur, il passe bien dans toutes les fonctions (j'ai testé) mais ne crée pas de fichier de cache ??? J'ai du rater qqchose !


Voici mon organisation :
inc/ est un répertoire qui contient mes scripts d'affichage
Cache/ est le répertoire contenant Cache_Lite (avec un sous-rép Lite)
Cache/tmp/ est le répertoire que j'ai désigné pour contenir mes fichiers de cache


J'ai choisi de mettre le code pour cacher mes appels MySQL dans mes fonctions (donc dans mes scripts persos du rép. "inc" ; elles sont appelées via un "include" en PHP) ; logique puisque selon les pages, j'appelle telle ou telle fonction, parfois à des endroits différents dans le code. Bref !

Voici un exemple de fonction :

Code: Tout sélectionner
   function AfficheNews($nbaffparpage,$affpages,$pagelien,$page)
   {


      ////////// PARAMETRAGE DU SYSTEME DE CACHE

      require_once('Cache/Lite/Output.php');

      $options = array(
                                                'cacheDir' => 'Cache/tmp/',
                                                'lifeTime' => 86400
         );

      $cache = new Cache_Lite_Output($options);

      if (!($cache->start("news-$nbaffparpage-$affpages-$pagelien-$page")))
      {

                                               ////////// DEBUT DU CACHE

         ECHO "<b>essai de mise en cache</b><br>";
            
                                               ////////// FIN DU CACHE
      }
      
   };



Mais ça n'enregistre rien ???

Where's the problem ?...


Remarques :
- mon répertoire tmp a bien les droits totaux (chmod 777)
- aucune erreur sur la page mais pas de fichier généré
- j'ai bien vérifié la casse de mes paths


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3466
Inscription: 18 Jan 2006

Message le Mar Mar 21, 2006 8:49

Merci

Oui, il y a bien une majuscule. D'ailleurs j'ai mis des "marqueurs" dans les méthodes de la classe Cache_Lite pour vérifier que les appels passaient bien, ça marche (constructeur, etc...)

Donc il passe bien dans les fonctions. Le hic c'est qu'il ne crée pas les fichiers, et que je n'ai pas de messages d'erreur :roll:


Je vais essayer de modifier les paths (déja essayé sans succès, mais je vais recommencer !)

spidetra
WRInaute passionné
WRInaute passionné
 
Messages: 1500
Inscription: 7 Juil 2003

Message le Mar Mar 21, 2006 9:31

http://www.webrankinfo.com/forums/viewtopic_47942.htm

C'est le cas classique d'un pb de path.
Je renouvelle le conseil que j'avais donné à wasabi : en mode debug, affiche la date courante dans ton cache.

Pourquoi ton rép de cache est un sous-répertoire de ton install de Cache_Lite.
Met toi plutot à la racine de ton site :
/tmp/cache et comme cacheDir tu met : tmp/cache

Met tout les noms de tes rep en minuscules, ça t'enleverra des sources d'erreurs possibles.

J'espère que ça pourras t'aider


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3466
Inscription: 18 Jan 2006

Message le Mar Mar 21, 2006 10:00

Merci pour ton aide.


J'ai créé les répertoires dans "tous" les paths possibles sur mon hébergement, AUCUN ne reçoit ces p... de fichiers.

Pour les majuscules/minuscules, ça demande un boulot monstre (faut aller modifier tous les scripts...), mais je me fais confiance là-dessus : j'ai fait hyper gaffe. D'ailleurs il n'y a pas de soucis puisque je passe bien dans les fonctions de Cache_Lite, elles-même dans les répertoires ayant leur première lettre en majuscule !

Bref. Je ne sais plus quoi faire. J'ai TOUT essayé ! j'ai même essayé de mettre le chemin "absolu" avec $_SERVER['DOCUMENT_ROOT'].'/Cache/tmp/' mais rien ne change.

spidetra
WRInaute passionné
WRInaute passionné
 
Messages: 1500
Inscription: 7 Juil 2003

Message le Mar Mar 21, 2006 10:08

Il est où ton appel à cache->end ?

Code: Tout sélectionner
if (!($cache->start("news-$nbaffparpage-$affpages-$pagelien-$page")))
      {

                                               ////////// DEBUT DU CACHE

         ECHO "<b>essai de mise en cache</b><br>";
            
                                               ////////// FIN DU CACHE
      }

/// Rajout de la fermeture du cache
$cache->end();



cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3466
Inscription: 18 Jan 2006

Message le Mar Mar 21, 2006 11:02

8O


Si c'est ça... Oh purée de b... de m...

Je vérifie de suite !



RRRRRHHHHAAAAAARRRRGGGG :oops:

Tu es un as, et moi un âne (et le mot est faible !)

MERCI !!!

:D

thierry8
WRInaute accro
WRInaute accro
 
Messages: 3251
Inscription: 11 Juil 2005

Message le Mar Mar 21, 2006 11:34

La doc. est très bien:
http://pear.php.net/manual/fr/package.c ... .intro.php

...

Cela évite ce genre d'erreur.


cedric_g
WRInaute accro
WRInaute accro
 
Messages: 3466
Inscription: 18 Jan 2006

Message le Mar Mar 21, 2006 13:27

Le pire c'est que je l'avais lue, mais j'ai du faire un copier/coller un peu trop "tronqué" :lol:


Quel boulet...


lol ma femme me le dit tous les jours pourtant :twisted:

spidetra
WRInaute passionné
WRInaute passionné
 
Messages: 1500
Inscription: 7 Juil 2003

Message le Mar Mar 21, 2006 13:32

cedric_g a écrit:Le pire c'est que je l'avais lue, mais j'ai du faire un copier/coller un peu trop "tronqué" :lol:
Quel boulet...

T'inquiète pas, c'est comme ça qu'on progresse :)


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités