php et html =bizarre mais php seul = okay !

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
Répondre
utilisateur ff

php et html =bizarre mais php seul = okay !

Message par utilisateur ff »

bonjour a tous,
j'utilise un petit script en php pour faire un compteur a l'aide d'un fichier texte.
exemple: 0 ecrit dans le fichier, le script ajoute 7 et le fichier contient 7 !
Super c'est ce que je veux, mais voilà derriere ça je veux afficher une page (xhtml ou html et css) et j'ai un probleme.
en appelant la page contenant le script puis le html selon les navigateurs je n'obtiens pas le même résultat dans mon fichier (alors qu'avec le script seul, pas de difference)
bon avec firefox je lance le script et j'obtiens 28 dans le fichier (3x7 de trop)
avec mozilla j'obtiens 14 (1x7 de trop )
avec internet explore 7 !
le script seul dans tout les navigateurs j'obtiens 7 !

voila mon script tout bete
le code php
*****
$ajout=7;//ce que je veux ajouter
$fichier ="fichier.txt";//le fichier a ouvrir
$fp=fopen("$fichier","r+");/ouverture en lecture ecriture
$a=fgets($fpkit,255);//recuperation du contenu du fichier
$a=$a+($ajout) ;//j'ajoute 7 au contenu
fseek($fp,0); //je reviens sur la premiere ligne du fichier
fputs($fp,$a); //et j'ecrase le contenu par le resultat de l'addition
fclose($fp);
****
fin du code php (qui seul fonctionne partout)
ajout de contenu html(1 formulaire et du blabla) apres le php (ou dans le php avec la fonction echo)
Ce qui pertube ff et mz !
Pourquoi firefox semble execute 4 fois le code et mozilla 2 fois
Je precise que j'ai jalonne le script de "echo $a" pour en suivre le deroulement
avec ff il affiche 14 quand on devrait encore etre a zero, ajoute 7 et affiche 21, et dans le fichier il est ecrit 28.
avec mozilla, il m'affiche 0 a la lecture du contenu et ajoute 7 en affichant 7 quand dans le fichier il est ecrit 14 !
Ie affiche 0 pour zero, 7 pour 7 et 7 dans le fichier.
experience tenter maintes fois en changeant le nom des variables, repertoires different pour chaque navigateurs, etc... (et sur mon espace web ! idem)

ALors qu'est ce qui cloche avec ff et mozilla
PsyDk
Lézard à collerette
Messages : 317
Inscription : 23 sept. 2003, 09:41

Message par PsyDk »

Tu pourrais mettre un lien vers le fichier source s'il te plait ?
utilisateur ff

Message par utilisateur ff »

http://gcyrillus.free.fr/site/essai.php
voila le truc avec des echo pour suivre l'evolution du script.
merci de ton interet
gcyrillus utilisateur ff
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Ça c'est pas le fichier source, on obtient le fichier déjà interprété :? Donne-nous le code source complet :wink:

Le php c'est un truc interprété sur le serveur. Le navigateur n'a rien à voir, il fait simplement une requête HTTP, le serveur la traite et envoie du HTML. Donc il y a un souci du côté du serveur :roll:
Invité

Message par Invité »

okay, le source il est dans le premier post ! :o
pour le html derriere une balise du blabla on ferme la balise un formulaire classique et c'est tout ET ça suffit chez moi a me rendre fou ! :x ( je me repete car la est mon probleme :oops: :sans html derriere ça marche nickel. )
sinon as tu tester le fichier avec ton explorateur ?et retrouve tu les mêmes bizarrerie que j' ai.?
Quand au resultat afficher par echo. ( les lignes jusqu'a "fin" aprés c'est du html.)
Je suis sur de mon bout de code car je l'utilise depuis lquelque temps dans d'autre page sans erreurs !
Cette bizarrerie apparait uniquement lorsque j'utilise firefox ou mozilla , en local ou sur le serveur de free mon hebergeur.

je n'ai pas trouvé sur mon pc de virus, troyen ou spyware qui provoquerais cela, c'est pour ça que je me tourne vers ce forum.

Autrement dit un probleme similaire a t-il déja étè rencontré, si oui quel en etait la ou les causes, a défault quel sont les causes probables ? Avez vous une piste que je peut essayer d'exploré :idea: ?.

Je suis amateur :? et je me suis lancer dans le php il y a 3 mois, je m'essaie au xhtml , j'ai un emploi dans l'hotellerie a plein temps,blabla... Mais sur ce truc bizarre je butte depuis 3 jours. :!: :?: :!:
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Bon, a priori je ne vois pas de raison. C'est pour ça que j'aimerais pouvoir voir le code complet de ta page "essai.php", parce qu'il doit y avoir un truc quelque part, forcément ! Et ce genre de trucs on ne les voit pas sur un petit bout de code comme ça :?
Invité

Message par Invité »

Rebonjour,
je crois bien avoir eu question a ma reponse

extrait de l'explication qui m'a ete donné sur le forum d'aspphp.net

...j'ai vu que avec FF et mozilla sur des pages PHP avec apache il apelle plusieur fois la page php, donc ton code s'execute plusieurs fois... C'est une histoire de page cachable ou non dans mozilla/firefox compare a IE. C'est aussi une histoire de chargement des css, images et autres qui necessite des requetes supplementaire de la page php sur le serveur apache. J'ai pas tout suivi mais je resume en gros:)

morale de l'histoire: passe a IIS ou change de methode:) met dans une session le nombre de fois que la page est exectuee (compteur) et si le compteur vaut initialement 0, tu execute reelement ton script via un IF.

fin de l'extrait .

je te laisse l'url du forum ou j'ai commencer a exposer mon probleme hier (pour info)
http://www.asp-php.net/forum.php?resum=no&numsg=102841
apres avoir reduit au minimum le code et ou ça commencé a bugger
Merci encore de ton interet.
Je ne sais pas encore comment je vais faire pour obtenir ce que je cherche a obtenir,je n'ai pas de delai alors je m'inquiete pas trop .
bonne soirée
utilisateur ff gcyrillus

Message par utilisateur ff gcyrillus »

http://gcyrillus.free.fr/site/essai.txt
j'oublié, le source du truc qui me taquine !
a plus
PsyDk
Lézard à collerette
Messages : 317
Inscription : 23 sept. 2003, 09:41

Message par PsyDk »

Code : Tout sélectionner

echo "<div >
<br/><p>coucou</p><hr style=\"width: 90%; height: 2px; align:center;\">
<div class=\"kitvu\"><span style=\"float:left;\">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<img height=\"72px\" width=\"104px\" src=\"onk\"/>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style=\"float:left; \">
<p>fichier telecharger ";
Le problème vient de <img height=\"72px\" width=\"104px\" src=\"\"/>

Le fait d'avoir le src à "" (vide) rappelle la page. Par conséquent tu te retrouves avec un appel récursif. Ça va appeler deux fois la page, voire davantage.

Change le src par "plop" par exemple, le serveur enverra une erreur 404 à la place et ton compteur sera incrémenté de façon correcte.
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Anonymous a écrit :...j'ai vu que avec FF et mozilla sur des pages PHP avec apache il apelle plusieur fois la page php, donc ton code s'execute plusieurs fois... C'est une histoire de page cachable ou non dans mozilla/firefox compare a IE. C'est aussi une histoire de chargement des css, images et autres qui necessite des requetes supplementaire de la page php sur le serveur apache. J'ai pas tout suivi mais je resume en gros:)
Me parait très douteux comme explication, j'utilise PHP depuis plusieurs années avec Apache 1 et 2, tournant tant sur des machines Windows que Linux, et je n'ai jamais eu ce genre de problème.

Je pense que l'explication de PsyDk est la bonne.
utilisateur ff gcyrillus

Message par utilisateur ff gcyrillus »

En effet, la balise image retirée ou bien renseigner mon compteur me donnait 14 ! puis j'ai vidé le cache et mis le cache a 0 et la ça marche parfaitement.
retour a la normale ça marche toujours bien.
L'explication ne me parait pas douteuse mais plutot un gros raccourci d' autres sujets de forums lus en diagonale :) aprés avoir lu ce sujet comment le résumé rapidos en 4 ligne grosso modo ?.

La leçon que j'en retire, bien finir les choses avant de passer a la suivante
et puis , firefox/mozilla s'y reprennent s'il trouve une erreur avant de laisser passer(IE s'en fout a priori ?).

:oops: Encore merci a tous :oops:
utilisateur ff gcyrillus

[REGLE]php et html =bizarre mais php seul = okay !

Message par utilisateur ff gcyrillus »

Merci, pour moi ce probleme est réglé !
a bientot
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Effectivement, on se demande toujours pourquoi IE n'applique pas le src (même s'il était a priori vide, quand-même...)
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invités