Je viens de placer une noisette dans mon site, noisette qui s’inspire très largement du plugin Balises de comptage
Si le résultat des balises est correct, j’ai un message d’erreur juste avant avant l’affichage du bloc :
Warning: fopen(data.dat) [function.fopen]: failed to open stream: Permission denied in /webdata/academie/escal/plugins/auto/escal/escal_fonctions.php on line 107
En effet ligne 107, j’ai bien
if($fichier=fopen($filename,« w »)) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,« r »)) {
ne provoque pas d’erreur
C’est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l’ensemble de la fonction
// balise #NB_CONNECTES d’après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename=« data.dat »;
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n’est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv(« REMOTE_ADDR »);
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,« r »)) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,« w »)) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii;
}
function balise_NB_CONNECTES($p) {
$p->code = « vst_nb_visiteurs_connecte() »;
$p->statut = ‹ php ›;
return $p;
}
Il faut regarder 3 choses:
1- les droits sur le fichier data.dat : 777
2- Si le safe mode est sur off
3- Si la directive allow_url_fopen est bien activée.
Bernard
Jean-Christophe Villeneuve a écrit :
Oh oh, bizarre
je n'ai ce message que lorsque je suis connecté !
Vous ne le verrez donc pas mais le problème reste
Jean-Christophe Villeneuve a écrit :
Bonsoir
Je viens de placer une noisette dans mon site, noisette qui s'inspire très largement du plugin Balises de comptage <http://www.spip-contrib.net/Plugin-pour-des-balises-de>
Si le résultat des balises est correct, j'ai un message d'erreur juste avant avant l'affichage du bloc :
En effet ligne 107, j'ai bien
if($fichier=fopen($filename,"w")) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,"r")) {
ne provoque pas d'erreur
C'est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l'ensemble de la fonction
// balise #NB_CONNECTES d'après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename="data.dat";
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n'est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv("REMOTE_ADDR");
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,"r")) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,"w")) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii; }
function balise_NB_CONNECTES($p) {
$p->code = "vst_nb_visiteurs_connecte()";
$p->statut = 'php';
return $p;
}
Il faut regarder 3 choses:
1- les droits sur le fichier data.dat : 777
2- Si le safe mode est sur off
3- Si la directive allow_url_fopen est bien activée.
Bernard
merci mais je pige pas tout :
2- safe mode est bien à "off"
3- allow_url_fopen est bien à "on"
mais pas de fichier data.dat de créé
et pourtant, ça semble fonctionner
Jean-Christophe Villeneuve a écrit :
Oh oh, bizarre
je n'ai ce message que lorsque je suis connecté !
Vous ne le verrez donc pas mais le problème reste
Jean-Christophe Villeneuve a écrit :
Bonsoir
Je viens de placer une noisette dans mon site, noisette qui s'inspire très largement du plugin Balises de comptage <http://www.spip-contrib.net/Plugin-pour-des-balises-de>
Si le résultat des balises est correct, j'ai un message d'erreur juste avant avant l'affichage du bloc :
En effet ligne 107, j'ai bien
if($fichier=fopen($filename,"w")) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,"r")) {
ne provoque pas d'erreur
C'est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l'ensemble de la fonction
// balise #NB_CONNECTES d'après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename="data.dat";
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n'est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv("REMOTE_ADDR");
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,"r")) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,"w")) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii; }
function balise_NB_CONNECTES($p) {
$p->code = "vst_nb_visiteurs_connecte()";
$p->statut = 'php';
return $p;
}
Il faut regarder 3 choses:
1- les droits sur le fichier data.dat : 777
2- Si le safe mode est sur off
3- Si la directive allow_url_fopen est bien activée.
Bernard
merci mais je pige pas tout :
2- safe mode est bien à "off"
3- allow_url_fopen est bien à "on"
mais pas de fichier data.dat de créé
et pourtant, ça semble fonctionner
c'est bon, je l'ai créé à la main et ça roule
merci !
Jean-Christophe Villeneuve a écrit :
Oh oh, bizarre
je n'ai ce message que lorsque je suis connecté !
Vous ne le verrez donc pas mais le problème reste
Jean-Christophe Villeneuve a écrit :
Bonsoir
Je viens de placer une noisette dans mon site, noisette qui s'inspire très largement du plugin Balises de comptage <http://www.spip-contrib.net/Plugin-pour-des-balises-de>
Si le résultat des balises est correct, j'ai un message d'erreur juste avant avant l'affichage du bloc :
En effet ligne 107, j'ai bien
if($fichier=fopen($filename,"w")) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,"r")) {
ne provoque pas d'erreur
C'est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l'ensemble de la fonction
// balise #NB_CONNECTES d'après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename="data.dat";
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n'est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv("REMOTE_ADDR");
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,"r")) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,"w")) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii; }
function balise_NB_CONNECTES($p) {
$p->code = "vst_nb_visiteurs_connecte()";
$p->statut = 'php';
return $p;
}
Il faut regarder 3 choses:
1- les droits sur le fichier data.dat : 777
2- Si le safe mode est sur off
3- Si la directive allow_url_fopen est bien activée.
Bernard
merci mais je pige pas tout :
2- safe mode est bien à "off"
3- allow_url_fopen est bien à "on"
mais pas de fichier data.dat de créé
et pourtant, ça semble fonctionner
c'est bon, je l'ai créé à la main et ça roule
merci !
enfin, c'est bon ... pas tout à fait
car j'aimerais qu'il se crée automatiquement
ou alors faire en sorte que ça fonctionne si ce fichier est dans un plugin ...
Une idée ?
Jean-Christophe Villeneuve a écrit :
Oh oh, bizarre
je n'ai ce message que lorsque je suis connecté !
Vous ne le verrez donc pas mais le problème reste
Jean-Christophe Villeneuve a écrit :
Bonsoir
Je viens de placer une noisette dans mon site, noisette qui s'inspire très largement du plugin Balises de comptage <http://www.spip-contrib.net/Plugin-pour-des-balises-de>
Si le résultat des balises est correct, j'ai un message d'erreur juste avant avant l'affichage du bloc :
En effet ligne 107, j'ai bien
if($fichier=fopen($filename,"w")) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,"r")) {
ne provoque pas d'erreur
C'est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l'ensemble de la fonction
// balise #NB_CONNECTES d'après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename="data.dat";
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n'est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv("REMOTE_ADDR");
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,"r")) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,"w")) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii; }
function balise_NB_CONNECTES($p) {
$p->code = "vst_nb_visiteurs_connecte()";
$p->statut = 'php';
return $p;
}
Il faut regarder 3 choses:
1- les droits sur le fichier data.dat : 777
2- Si le safe mode est sur off
3- Si la directive allow_url_fopen est bien activée.
Bernard
merci mais je pige pas tout :
2- safe mode est bien à "off"
3- allow_url_fopen est bien à "on"
mais pas de fichier data.dat de créé
et pourtant, ça semble fonctionner
c'est bon, je l'ai créé à la main et ça roule
merci !
enfin, c'est bon ... pas tout à fait
car j'aimerais qu'il se crée automatiquement
ou alors faire en sorte que ça fonctionne si ce fichier est dans un plugin ...
Une idée ?
J'ai oublié de préciser : le fichier se crée automatiquement en local mais pas en ligne
Jean-Christophe Villeneuve a écrit :
Oh oh, bizarre
je n'ai ce message que lorsque je suis connecté !
Vous ne le verrez donc pas mais le problème reste
Jean-Christophe Villeneuve a écrit :
Bonsoir
Je viens de placer une noisette dans mon site, noisette qui s'inspire très largement du plugin Balises de comptage <http://www.spip-contrib.net/Plugin-pour-des-balises-de>
Si le résultat des balises est correct, j'ai un message d'erreur juste avant avant l'affichage du bloc :
En effet ligne 107, j'ai bien
if($fichier=fopen($filename,"w")) {
mais la ligne 75 qui contient
if ($fichier=fopen($filename,"r")) {
ne provoque pas d'erreur
C'est donc le w (pour write je suppose) qui couine ?
Etant ignare en php, je me tourne vers vous.
Une idée de la solution ?
Ci-dessous l'ensemble de la fonction
// balise #NB_CONNECTES d'après Merckel Loic
function vst_nb_visiteurs_connecte() {
$time=240;
$filename="data.dat";
// $time est le temps en seconde à partir duquel on considère que
// le visiteur n'est plus connecté
// $filename est le nom du fichier créé pour stocker les informations
$ip = getenv("REMOTE_ADDR");
$date=time();
$i=0;
$ii=0;
$bool=0;
if (file_exists($filename)) {
if ($fichier=fopen($filename,"r")) {
while(!feof($fichier)) {
$ligne=fgets($fichier,4096);
$tab=explode("|",$ligne);
if ($tab[1]>0) {
$tab_de_tab[$i][0]=$tab[0];
$tab_de_tab[$i][1]=$tab[1];
$i++;
}
}
fclose($fichier);
}
}
for ($j=0;$j<$i;$j++) {
if (($date-chop($tab_de_tab[$j][1]))>$time) {
//on ne fait rien
} else {
$tab_de_tab_actualise[$ii][0]=$tab_de_tab[$j][0];
$tab_de_tab_actualise[$ii][1]=chop($tab_de_tab[$j][1]);
$ii++;
}
}
for ($j=0;$j<$ii;$j++) {
if ($tab_de_tab_actualise[$j][0]==$ip) {
$bool=1;
}
}
if($bool==0) {
$tab_de_tab_actualise[$ii][0]=$ip;
$tab_de_tab_actualise[$ii][1]=$date;
$ii++;
}
if($fichier=fopen($filename,"w")) {
for($j=0;$j<$ii;$j++) {
fputs($fichier,chop($tab_de_tab_actualise[$j][0]));
fputs($fichier,"|");
fputs($fichier,chop($tab_de_tab_actualise[$j][1]));
fputs($fichier,"\n");
}
fclose($fichier);
}
return $ii; }
function balise_NB_CONNECTES($p) {
$p->code = "vst_nb_visiteurs_connecte()";
$p->statut = 'php';
return $p;
}
Les droits attribués au fichier sont intéressants pour son utilisation courante. Ceci dit, quand le fichier n'existe pas, c'est aux droits du répertoire ou il doit être créé qu'il faut s'intéresser. Sur une machine sous linux/unix, comme cela semble être le cas pour ton serveur en ligne, il te faudra avoir le flag "x" ( exécuter ) sur le répertoire parent.
Dans un premier temps, tu peux brutalement passer le tout à 777, mais si tu peux, autant affiner le tout après ( à minima sur le dernier octet ).
Les droits attribués au fichier sont intéressants pour son utilisation courante. Ceci dit, quand le fichier n’existe pas, c’est aux droits du répertoire ou il doit être créé qu’il faut s’intéresser. Sur une machine sous linux/unix, comme cela semble être le cas pour ton serveur en ligne, il te faudra avoir le flag « x » ( exécuter ) sur le répertoire parent.
Dans un premier temps, tu peux brutalement passer le tout à 777, mais si tu peux, autant affiner le tout après ( à minima sur le dernier octet ).
Malheureusement, je n’ai pas la main sur le dossier racine de mon site.
Je vais voir avec l’admin du serveur.
Sinon, j’ai aussi essayé d’intégrer le code du plugin « Nombre de visiteurs connectés » mais ça dépasse mes compétences.
Si quelqu’un peut m’aider …
Malheureusement, je n’ai pas la main sur le dossier racine de mon site.
Je vais voir avec l’admin du serveur.
Beuh, le fichier « data.dat » se créé à la racine du site ? J’aurais pensé qu’il se créerait à la racine du plugin …
Damned !
Sinon, j’ai aussi essayé d’intégrer le code du plugin « Nombre de visiteurs connectés » mais ça dépasse mes compétences.
Si quelqu’un peut m’aider …
Ben ce plugin semble aussi simple que redoutablement efficace : il se contente de créer un filtre « visiteurs_connectes_compter ».
Ce filtre qui n’en est pas un compte les fichiers dans le répertoire « tmp/visites/ », ce qui doit correspondre aux session spip, et revoie la valeur trouvée:
function visiteurs_connectes_compter(){
return count(preg_files(_DIR_TMP.‹ visites/ ›,‹ . ›));
}
Du coup, en l’appliquant sur la balise rem ( comme dans la noisette proposée ), on peut afficher le nombre de visiteurs connectés.
L’avantage de passer par la noisette, c’est d’avoir une gestion du cache indépendante : #CACHE{60}
[
Voila comment il semble fonctionner. D’ailleurs, un grand merci pour m’avoir fait découvrir ce petit plugin bien sympathique: je pense que je vais repiquer l’idée dans l’un de mes petits projets …
Hum, rectification, ce répertoire ne contient pas les sessions ... A creuser donc
Ceci dit, le plugin compte bel et bien ces fichiers, il va vraiment falloir que je creuse ca !
Sinon, l'auteur le dit sur la page d'aide : pour faire fonctionner le plugin, il suffit de :
1) l'activer
2) appeller la ou tu veux la noisette : <INCLURE{fond=inc-visiteurs}>
Hum, rectification, ce répertoire ne contient pas les sessions ... A creuser donc
Ceci dit, le plugin compte bel et bien ces fichiers, il va vraiment falloir que je creuse ca !
Sinon, l'auteur le dit sur la page d'aide : pour faire fonctionner le plugin, il suffit de :
1) l'activer
2) appeller la ou tu veux la noisette : <INCLURE{fond=inc-visiteurs}>
Rien de plus !
_______________________________________________
voui voui mais j'aimerais l'intégrer à mon plugin-squelette pour que ça fonctionne sans activer un autre plugin.
Si tu es intéressé par ça, il y a aussi la lame du couteau suisse qui reprend ce code
voui voui mais j'aimerais l'intégrer à mon plugin-squelette pour que ça fonctionne sans activer un autre plugin.
Hum, ben dans ce cas, il te faudra recopier la fonction :
function visiteurs_connectes_compter(){
return count(preg_files(_DIR_TMP.'visites/','.'));
}
Dans le "mes_fonctions" de ton plugin. Tu pourras ensuite l'appeler selon la même méthode.
Autre possibilité, tu recopie également la noisette et tu l'appelle avec un inclure.
Si tu es intéressé par ça, il y a aussi la lame du couteau suisse qui reprend ce code
Hum, j'y ai pas encore regardé, mais j'ai vu ca sur la page d'aide en effet.
J'irai certainement y jeter un petit coup d'œil !
voui voui mais j'aimerais l'intégrer à mon plugin-squelette pour que ça fonctionne sans activer un autre plugin.
Hum, ben dans ce cas, il te faudra recopier la fonction :
function visiteurs_connectes_compter(){
return count(preg_files(_DIR_TMP.'visites/','.'));
}
Dans le "mes_fonctions" de ton plugin. Tu pourras ensuite l'appeler selon la même méthode.
Autre possibilité, tu recopie également la noisette et tu l'appelle avec un inclure.
et c'est bien là mon souci.
Dans escal_fonctions.php, j'ai rajouté :
function visiteurs_connectes_compter(){
return count(preg_files(_DIR_TMP.'visites/','.'));
}
Hum, en faisant un simple :
[<p class='visiteurs_connectes'>visiteur(s) en ce moment: (#VAL{}|visiteurs_connectes_compter)</p>]
Tu obtiens quoi ?
Pour ma part, ca compte bien les fichiers en question. Ceci dit, même avec deux comptes logués sur le site ( en local, mais depuis deux machines distinctes ), j'ai un seul fichier dans le répertoire...
"visiteur(s) en ce moment: 1"
Hum, en faisant un simple :
[<p class='visiteurs_connectes'>visiteur(s) en ce moment: (#VAL{}|visiteurs_connectes_compter)</p>]
Tu obtiens quoi ?
Pour ma part, ca compte bien les fichiers en question. Ceci dit, même avec deux comptes logués sur le site ( en local, mais depuis deux machines distinctes ), j'ai un seul fichier dans le répertoire...
"visiteur(s) en ce moment: 1"