Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2011, 14h58   #1
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Par défaut fwrite écrit mes log en double sur ovh 240plan

Bonjour a tous,

Voici mon soucis, j'ai un script de log très simple via fwrite (voir ci dessous) qui m'écrit mes logs en double sur un abonnement ovh 240plan. Et le meme script fonctionne normalement (il ecrit les logs une seule fois) sur un abonnement ovh start.

Voici le script en question:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
 
$log = fopen ($_SERVER['DOCUMENT_ROOT']."/log/log.txt", "a");
 
 
	$log_text   = "******************************\r\n";
	$log_text  .= "****       GET TEST       ****\r\n";
	$log_text .= "*     ".date('d/m/y à H:i:s')."    *\r\n";
	$log_text .= "******************************\r\n";
 
	if(!empty($_POST))
		$log_text .= '  Variable $_POST            : '.print_r($_POST, true)."\r\n\r\n";
	if(!empty($_FILES))
		$log_text .= '  Variable $_FILES            : '.print_r($_FILES, true)."\r\n\r\n";
	if(!empty($_GET))
		$log_text .= '  Variable $_GET            : '.print_r($_GET, true)."\r\n\r\n";
	if(!empty($_REQUEST))
		$log_text .= '  Variable $_REQUEST            : '.print_r($_REQUEST, true)."\r\n\r\n";
	if(!empty($_COOKIE))
		$log_text .= '  Variable $_COOKIE           : '.print_r($_COOKIE, true)."\r\n\r\n";
	if(!empty($_SESSION))
		$log_text .= '  Variable $_SESSION          : '.print_r($_SESSION, true)."\r\n\r\n";
 
 
	fwrite( $log, $log_text);
	fclose($log);
Avez vous déjà eu ce genre de soucis?
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 15h12   #2
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Ca doit plutot être ton traitement qui est exécuté deux fois.
Je suppose qui si tu exécutes directement et tout seul le bout de script que tu nous indiques, tu n'auras pas deux traitements.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h12   #3
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Merci Sabotage, pour ta réponse rapide.

Malheureusement, le script en question ne contient que le code que j'ai posté et ne se trouve pas dans une boucle. Le fichier contenait plus de ligne que j'ai zappé au fur et a mesure pour essayer d'isoler le problème. et être sur qu'il ne s'agisse pas du boucle cachée. J'ai aussi viré tous les includes. Mais le problème demeure.

Peut il s'agir d'un problème du a une configuration du serveur?


PS: la notification des réponse par mail n'est a priori pas activé sur mon compte je change ça de suite de manière a pouvoir être plus réactif!
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h27   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Comment est appellé le script ?
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h38   #5
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
J'appelle le script directement depuis un navigateur.
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h41   #6
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Essaie de mettre d'incrémenter un compteur en session pour voir.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 17h47   #7
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
L'idée de mettre un compteur est bonne, mais je vois pas comment je peux faire, tu peux m'eclairer?

PS: je viens de t'envoyer les urls en mp si tu veux tester...

Je viens de rajouter un session_start() [edit] et un session_regenerate_id() [/edit] au debut du script.

Si le script est lancé 2 fois on devrait avoir des id de session différentes, sur le fichier de log, non?
T'en penses quoi?

Voici ce que ca me donne:

le premier log affiche l'ancien version de id de session contenu dans le cookie.
Ce qui semble normale.

Le doublon (qui n'en ai plus un) affiche dans la variable cookie un nouvel id de session.

Et ben... c'est pas plus clair dans mon esprit...
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2011, 20h06   #8
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
Comme tu peux le voir, j'ai fais un test à 20:04:35 puis un à 20:07:29
et ça n'a mis qu'une seule entrée à chaque fois.
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 08h56   #9
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Bonjour Sabotage,

Oui je viens de voir ca sur le fichier log
J'ai donc refait des tests ce matin et... je vois toujours double

Mais grâce a toi et a tes tests j'ai eu une idée!
Je faisais mes tests sous firefox et opera les 2 navigateurs que j'utilise pour développer. Quand je lance la requête depuis ces navigateurs j'ai les logs en double comme si j'avais lancé la requête 2 fois. En effet si je vire les cookies, le premier log est vide le second affiche les cookies.

J'ai donc eu l'idée grâce a toi de tester sous d'autres navigateurs (safari et ie) et surprise je n'ai plus qu'un seule entrée dans mon fichier text.

Mon soucis viens donc de ces 2 navigateurs. Reste à savoir pourquoi ils ont ce comportement. Si tu as une idée, je prends!

En attendant je vais tester sous un autre poste sous firefox, et te tiens au courant.

En tout cas merci pour ton aide!!!!!


EDIT: en fait les tests sous opera sont bon il n'y a que firefox qui semble lancer les pages 2 fois.
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 09h13   #10
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Résultat de mes test sous firefox sur un autre pc, c'est ok!

Le problème vient donc de mon Firefox. D'apres toi, peut-il s'agir d'un virus? d'une extension qui déconne? d'autres choses ?
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 09h32   #11
Membre Expert
 
Avatar de Bebel
 
Homme David B.
Développeur informatique
Inscription : avril 2003
Messages : 742
Détails du profil
Informations personnelles :
Nom : Homme David B.
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Développeur informatique
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : avril 2003
Messages : 742
Points : 1 085
Points : 1 085
Bonjour,

tu n'aurais pas une extension genre firebug qui lancerait la même requête pour récupérer des données ?

Tu as essayé en désactivant toutes tes extensions ?
__________________
Tout énigme a une solution ! Tout est question de discipline !
Bebel est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 06/05/2011, 09h44   #12
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Bon et bien voilà, c'est l’extension firebug qui génère ce comportement. Lorsqu'elle est activée, j'ai 2 entrée dans mes logs.
Lorsqu'elle n'est pas en fonctionnement je n'ai qu'une seule entrée dans mes logs.

tout ceci n'a pas grand chose à voir avec PHP et ses fonctions, mais grâce a toi Sabotage j'ai enfin trouvé le pourquoi du comment.

Merci infiniment.
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/05/2011, 10h06   #13
Invité de passage
 
Inscription : septembre 2009
Messages : 8
Détails du profil
Informations forums :
Inscription : septembre 2009
Messages : 8
Points : 0
Points : 0
Citation:
Envoyé par Bebel Voir le message
Bonjour,

tu n'aurais pas une extension genre firebug qui lancerait la même requête pour récupérer des données ?

Tu as essayé en désactivant toutes tes extensions ?
Je viens de voir ton message Bebel, oui c'est tout a fait cela! Bien vu! Je ne savais pas que firebug doublé les requêtes, ce soir je me coucherais plus intelligent, ou en tout cas moins bête...
Nauar_64 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h06.


 
 
 
 
Partenaires

Hébergement Web