
le 13/03/2008 à 16:41
Moitié de mes variables de sessions qui disparaissent d'une page à l'autre !
Tu n'as pas trouvé de bug Firefox. Je t'ai dis ce qu'il se passait quand tu mettais une image avec un src vide dans ton code HTML.
A priori tu n'as pas compris.
Donc je te le redis : quand tu mets une image avec un source vide dans ton HTML, Firefox, quand il charge l'image, il recharge la page HTML courante, comme si le source de l'image valait ce que tu as dans l'adresse de ton Firefox.
Pour preuve, j'ai écrit une page web toute conne :
Ensuite, j'ai utilisé un outil d'analyse de trafic reseau, et en chargeant cette page web, voila ce que je vois en requetes HTTP :
On voit bien que la page est appelé deux fois.
Par contre, avec une page web du genre :
On n'observe pas ce problème.
Donc si ton src est vide, vire le, et re teste pour voir.
Si le problème disparait, c'est que ton script ne gère pas le fait que la page se recharge, c'est tout : donc soit tu corriges ton script en faisant une modif, soit tu vires le "src", mais dans ce cas, tu camoufleras le problème au lieu de le corriger à la source.
A priori tu n'as pas compris.
Donc je te le redis : quand tu mets une image avec un source vide dans ton HTML, Firefox, quand il charge l'image, il recharge la page HTML courante, comme si le source de l'image valait ce que tu as dans l'adresse de ton Firefox.
Pour preuve, j'ai écrit une page web toute conne :
toto
<img src="" alt="pom" />
blu
Ensuite, j'ai utilisé un outil d'analyse de trafic reseau, et en chargeant cette page web, voila ce que je vois en requetes HTTP :
GET /test.php HTTP/1.1
Host: www.lephpfacile.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
HTTP/1.1 200 OK
Date: Thu, 13 Mar 2008 15:31:06 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 54
Keep-Alive: timeout=15
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
..........+./.....MW(.J.URRH.).U*..UR...J.)......."...
GET /test.php HTTP/1.1
Host: www.lephpfacile.com
User-Agent: Mozilla/5.0 (X11; U; Linux i686; fr; rv:1.8.1.12) Gecko/20080201 Firefox/2.0.0.12
Accept: image/png,*/*;q=0.5
Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive
Referer: http://www.lephpfacile.com/test.php
HTTP/1.1 200 OK
Date: Thu, 13 Mar 2008 15:31:06 GMT
Server: Apache
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Vary: Accept-Encoding
Content-Encoding: gzip
Content-Length: 54
Keep-Alive: timeout=15
Connection: Keep-Alive
Content-Type: text/html; charset=UTF-8
..........+./.....MW(.J.URRH.).U*..UR...J.)......."...
On voit bien que la page est appelé deux fois.
Par contre, avec une page web du genre :
toto
<img alt="pom" />
blu
On n'observe pas ce problème.
Donc si ton src est vide, vire le, et re teste pour voir.
Si le problème disparait, c'est que ton script ne gère pas le fait que la page se recharge, c'est tout : donc soit tu corriges ton script en faisant une modif, soit tu vires le "src", mais dans ce cas, tu camoufleras le problème au lieu de le corriger à la source.