Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: nieokreślony problem ie/sesje php/kodowanie
Forum PHP.pl > Forum > Po stronie przeglądarki
pjozwiak1
Witam,
Mam bardzo dziwny problem, który w zasadzie dotyczy jedynie przeglądarki Internet Explorer.
Pod innymi nie występuje.

Otoczenie:
-włączam sesje w php funkcą session_start()
-strona ma zadeklarowane kodowanie na iso-8859-2 w <meta>
-przeglądarka IE, wersja 6.0.2900.2180.xpsp_sp2_gdr.070227-2254

Problem:
Czasami przy kliknięciu na jakiś link do innej części strony strona się nie przeładowuje, tzn. z ekranu znika stara strona, a na jej miejsce nie pojawia się nowa. Ładowanie strony się kończy. IE nie pokazuje żadnych błędów. Po prostu biały ekran. Jak naciskam na F5 aby odświeżyć stronę to się przeładuje i działa poprawnie.

Co NAJDZIWNIEJSZE problem znika jeśli wprowadzę jedno z poniższych rozwiązań:
1. Przestanę używać sesji w php ? - (btw - rozwiązanie nie do zaakceptowania)
2. Usunę stronę kodową w definicji meta lub zmienię ją na jedyną słuszną winksmiley.jpg WINDOWS-1250 (rozwiązanie także nie akceptowalne)
3. Włączę w IE opcję Widok->kodowanie->automatyczny wybór
4. wyślę w kodzie php nagłówek funkcją:
  1. <?php
  2. header('Content-Type: text/html; charset=iso-8859-2');
  3. ?>
w zasadzie można by na takie rozwiązanie przystać, jeśli komuś nie przeszkadza dotarcie do prawdziwej przyczyny tego zachowania.

Nadmieniam tylko, że zmiana strony kodowej z iso-8859-2 na utf-8 nie niweluje problemu.
W trakcie rozwiązywania problemu wykluczyłem problem z serwerem, gdyż daną stronę umieściłem na innym i zachowanie było identyczne. Gdy podglądam nagłówki jakie docierają do przeglądarki IE to wszystko jest w porządku, oprócz tego, że IE nie działa.

Jeśli ktoś z Was napotkał na taki problem i zna jego przyczynę o może nawet rozwiązanie to piszcie.
macek
hmm, a patrzyłeś na innych komputerach z ie ? może to po prostu wina twojej kopii przeglądarki ? i gdyby nie kodowania to podejrzewałbym jakieś pętle w php które wykorzystują zmienne sesji
php programmer
Ty a może weź sobie włącz

  1. <?php
  2. ini_set('display_erros',TRUE);
  3. ?>


na samym początku
Cezar708
1. a masz ustawione odpowiednio <meta>

2.
Cytat(pjozwiak1 @ 12.10.2007, 21:17:36 ) *
Gdy podglądam nagłówki jakie docierają do przeglądarki IE to wszystko jest w porządku, oprócz tego, że IE nie działa.

jeśli podglądasz nagłówki to pokaż je, bo wg mnie tu jest jakiś błąd (tym bardziej, że po ustawieniu strony kodowej w nagłówku strona zadziałała)

3. Często serwer ma ustawione domyślne kodowanie strony, i tu też może być problem.
pjozwiak1
Witam,
Meta jest ustaione w pliku .html

widok nagłówków:
  1. GET /~cmslite/?page=admmenu HTTP/1.1
  2. Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*
  3. Accept-Language: pl
  4. Accept-Encoding: gzip, deflate
  5. User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)
  6. Host: localhost
  7. Connection: Keep-Alive
  8. Cookie: PHPSESSID=fce803ae8be92e2f71b6230125e2fc6f
  9.  
  10. HTTP/1.1 200 OK
  11. Date: Sat, 20 Oct 2007 14:46:51 GMT
  12. Server: Apache/1.3.31 (Win32) PHP/5.0.2 mod_gzip/1.3.26.1a
  13. X-Powered-By: PHP/5.0.2
  14. Set-Cookie: PHPSESSID=fce803ae8be92e2f71b6230125e2fc6f; path=/
  15. Expires: Thu, 19 Nov 1981 08:52:00 GMT
  16. Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
  17. Pragma: no-cache
  18. Keep-Alive: timeout=15, max=88
  19. Connection: Keep-Alive
  20. Content-Type: text/html; charset=iso-8859-2
  21. Content-Encoding: gzip
  22. Content-Length: 3075


Jak już wspomniałem działa OK, od kiedy dodałem nagłówek Content-Type: text/html; charset=iso-8859-2
Problem się powtarzał nie zależnie od tego gdzie była załadowana strona - na jakim serwerze, np: w nazwa.pl

Aha, error_reporting(E_ALL);
miałem ustawione, żadnych błędów, przecież pokazały by się pod Firefoxem, to ewidentnie problem z IE
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.