Bonjour à tous,

Après avoir fini la liste des tutos pour le site de A a Z qui sont géniaux j'ai un petit soucis je m'explique.

J'ai voulu faire des stats de visites. J'ai crée une table statistics avec controller, model etc jusque-là pas de soucis.

J'ai crée un petit script (record_stats.php) pour recup $ip, $navigateur, referer etc du visiteurs que j'ai voulu place dans le fichier view/layout/default.php (logic)

1er soucis quand j'ai voulu inclure cette page impossible de faire appel à une vue j'ai donc du déplacé mon script dans le dossier config pour faire l'appel. Et place ceci dans default.php include ROOT.DS.'config'.DS.'record_stats.php';

2èeme soucis impossible dans se script de faire appel au controller ou au Model pour enregistre en base de données les infos récupérer par se petit script. J'ai été obliger de recrée une connections à la base et de faire l'insertion de chaque enregistrement en procédural.

Le script fonctionne bien mais sa n'est pas très propre d'avoir 2 connections à la base de données et d'avoir une demande d'insertion directement dans le script.
Pensez-vous qu'il existe une meilleur solution à se problème ? Si oui je suis preneur :)

Si vous avez besoin de plus d'explications ou d'infos sur mon soucis demandé. J’espère avoir été clair dans mon problème.

5 réponses


tribal
Auteur
Réponse acceptée

Bon j'ai résolu mon problème.
Il suffisait d'utiliser la fonction request de la class Controller en le modifiant un peu.
J'avais complètement zap cette fonction.

Sans vouloir démonter ce que tu essaie de faire, pourquoi ne pas passer par Analytics de Google ? C'est gratuit et ça a fait ses preuves :)

tribal
Auteur

Oui tout à fait j'utilisais leur appli avant qui est d'ailleurs très bien.
Mais le problème avec analytics est que tu ne peux pas faire des statistiques journalières mais seulement hebdo.
Il ne te donne pas toutes les infos dans l'xml qui te transmette.

Donc j'en suis venu à la décision de crée mon propre module de stats pour avoir le maximum d'infos que j'avais besoin.

D'après toi se que j'ai fais va m'obliger à modifier bcp le mvc pour le faire fonctionne ?

Fait un appel en javascript a un script (ça te permet d'isoler la requête et de ne pas ralentir l'affichage de la page :)

tribal
Auteur

Ok je pense voir se que tu dit j'ai jamais encore essayer je vais me renseigner un peu sur le net.

As tu des pistes defois ?