Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Php w IE problem
Forum PHP.pl > Forum > Przedszkole
neo1986kk
Witam, czy IE ma jakiś problem z tym kodem? nie wyświetla mi nic, a powien wypisać że wszystko jest w porządku, ale jeśli nie ma pliku to komenda else działa i wyswietla ze nie ma pliku
  1. <?php
  2. if (!empty($_FILES["plik"]["name"]))
  3. {
  4. if (($_FILES["plik"]["type"] == "image/gif")
  5. || ($_FILES["plik"]["type"] == "image/jpeg")
  6. || ($_FILES["plik"]["type"] == "image/jpg"))
  7. {
  8.  
  9. $plik_tmp = $_FILES['plik']['tmp_name'];
  10. $plik_nazwa = $_FILES['plik']['name'];
  11. $plik_rozmiar = $_FILES['plik']['size'];
  12.  
  13. if(is_uploaded_file($plik_tmp)) {
  14. move_uploaded_file($plik_tmp, "upload/$plik_nazwa");
  15.  
  16. }
  17. $orginalny_obrazek='upload/'.$plik_nazwa;
  18. $docelowa_szerokosc=500 ;
  19. $docelowa_wysokosc=370;
  20. $jpeg_quality = 90;
  21.  
  22. // Pobranie orginalnych parametr󷠩 kalkulacja skali
  23. list($szerokosc, $wysokosc) = getimagesize($orginalny_obrazek);
  24. $xskala=$szerokosc/$docelowa_szerokosc;
  25. $yskala=$wysokosc/$docelowa_wysokosc;
  26.  
  27. // Kalkulacja nowego rozmiaru
  28. if ($yskala>$xskala){
  29. $nowa_szerokosc = round($szerokosc * (1/$yskala));
  30. $nowa_wysokosc = round($wysokosc * (1/$yskala));
  31. }
  32. else {
  33. $nowa_szerokosc = round($szerokosc * (1/$xskala));
  34. $nowa_wysokosc = round($wysokosc * (1/$xskala));
  35. }
  36.  
  37. // Zmiana rozmiaru orginalnego obrazu
  38. $obraz_zmiana_wielkosci = imagecreatetruecolor($nowa_szerokosc, $nowa_wysokosc);
  39. $obrazek_tymczasowy = imagecreatefromjpeg ($orginalny_obrazek);
  40. imagecopyresampled($obraz_zmiana_wielkosci, $obrazek_tymczasowy, 0, 0, 0, 0, $nowa_szerokosc, $nowa_wysokosc, $szerokosc, $wysokosc);
  41.  
  42. imagejpeg($obraz_zmiana_wielkosci,'uploads/'.$plik_nazwa.'',90);
  43. echo 'wszyszko w porządku';
  44. }
  45. else echo 'nie ma pliku';
  46. }


na FF jest wszystko ok. Korzystam z IE 7
nospor
zrob sobie:
print_r($_FILES);
i przyjrzyj się szczególnie temu co zawiera TYPE - moze sam bez naszej pomocy dojdziesz co jest nie tak winksmiley.jpg
neo1986kk
a mialem ten pjpeg ale myslalem ze to nie potrzebne... i to usunalem a sie okazalo ze to to:P, teraz wyswietla wszystko fajnie, ale i tak IE ma problem z JS. Co to za przeglądarka jest to naprawde... na FF wszystko ładnie a tu błędy skryptu.

A powiedz mi czy jest też taka możlwość żeby zobaczyć błędy JS? oprócz konsoli błędów bo w IE nic z niej nie wynika...
blooregard
Ja jeszcze dodam, że pojęcie:
Cytat
[PHP]Php w IE problem

nie istnieje, gdyż kod PHP wykonywany jest po stronie serwera, a przeglądarka otrzymuje wygenerowany kod HTML/JS/CSS/co tam jeszcze, więc IE nie może mieć problemów z kodem PHP smile.gif Tak samo, jak żadna inna przeglądarka.

A piszę to dlatego, że wielu początkujących ma problem z lokalizowaniem podobnych błędów i skupiają się na szukaniu go po stronie przeglądarki, podczas gdy jest to od niej niezależne.
neo1986kk
ale na FF to działało, to moze jeszcze jedno pytanie, czy js tez nie zalezy od przegladarki? i jak sprawdzić poprawność kodu.? please
nospor
Cytat
czy js tez nie zalezy od przegladarki
teoretycznie tak, w praktyce to przeglądarka odpowiada za implementacje js i moze miec swoje BUGi. No i zazwyczaj to IE ma te bagi winksmiley.jpg

Cytat
i jak sprawdzić poprawność kodu.
zaisntaluj sobie dla IE developera - jest cos takiego, musisz poszukac w necie
neo1986kk
Ok poszukam bo juz nie mam siły do tej przglądarki, najchętniej to bym ją sobie odpuścił...
blooregard
Cytat
ale na FF to działało

Jeszcze raz podkreślę: kod PHP jest niezależny od przeglądarki. To, że na FF działa, a na IE nie, to kwestia tego, co przeglądarka otrzymała od serwera/interpretera PHP w postaci wygenerowanego kodu HTML/JS/CSS.

Dodam jeszcze do odpowiedzi @nospor'a: wyświetl sobie źródło strony w FF. Jeśli gdzieś pojawią się jakieś błędy w składni HTML (niedomknięte bądź źle domknięte cudzysłowy, apostrofy, znaczniki zamykające poza blokiem, który mają zamknąć) wyświetli Ci na czerwono.
Bardzo często takie błędy powodują że FF "przymyka" oko i prawidłowo parsuje kod HTML, a IE się stawia i w wyniku masz białą stronę i problemy, jak ten.
neo1986kk
no ten problem wynikał z tego że w php nie bylo warunku na pjpeg, oczywiście wiem, że php to skrypt za przeglądarką dlatego chcialem w temacie zamieścić coś takiego "php ma problem z IE?questionmark.gifquestionmark.gifquestionmark.gif?" ale stwierdziłem, że może to być głupie, dlatego zostawiłem tak jak jest:) w każdym razie jak to w pisaniu glupi błąd powoduje błąd całej strony. a'propo js

nie dziala mi dlatego, że mam w jednym pliku kilka wykonywalnych skryptów, jak wyciągnąłem sam kawałek z kodem i to co ma wykonywać do działa, tak jak mowie na FF działa bez zarzutu.

To może jeszcze zapytam, czy jeśli kod w FF działa to w IE też musi działać? ( nie jest to AJAX) czy FF też czasami przymyka oczy na JS?
nospor
Cytat
To może jeszcze zapytam, czy jeśli kod w FF działa to w IE też musi działać?
Nie, juz ci to pisałem.
neo1986kk
no tak, w tym IE Developerze to zabardzo nie ma nic na temat poprawności kodu Js, kurcze no nie wiem już co z tym zrobić.

Powiem wam tak z ciekawości, może komuś się to przyda, dlatego że ludzie którzy tak jak ja od zera zaczynają programowanie mogą mieć wiele kłopotów spowodowanych błahymi gadżetami. Otóż w moim kodzie JS był jeden błąd, który FF przeszedł bez przeszkód, natomiast IE go wychwycił i zgłaszał błąd, minowicie w funkcji miałem znak ',' w ostatniej linijce, a nie powinno tam nic stać... Odkryłem to oczywiście przypadkowo przeglądając forum i czytając różne problemy z JS. Szkoda tylko, że programy do sprawdzania JS pokazywały błędnie miejsce tego niuansu... No nic najważniejsze ze zrobione. Pozdrawiam.
blooregard
Cytat
Otóż w moim kodzie JS był jeden błąd, który FF przeszedł bez przeszkód, natomiast IE go wychwycił i zgłaszał błąd, minowicie w funkcji miałem znak ',' w ostatniej linijce, a nie powinno tam nic stać...


Dokładnie o tym pisałem Ci kilka postów wyżej:
Cytat
Bardzo często takie błędy powodują że FF "przymyka" oko i prawidłowo parsuje kod HTML, a IE się stawia i w wyniku masz białą stronę i problemy, jak ten.
neo1986kk
Oczywiście, że napisałeś i dlatego też zacząłem szukaćsmile.gif Dziękuję za pomoc

A jeszcze chciałbym zadać pytanie na temat mojego ostatniego wątku, na które nikt nie odpisał i tak naprawdę nie wiem, czy poprotu nie ma takiej możliwości czy nikt nie wie o co chodzi, czy może nikt nie wie jak to zrobić?

chodzi dokladnie o to, że po kliknięciu przycisku submit zrobiłem coś takiego że pokazuje się czarny div na całą stronę z loaderem, zrobiłem to dlatego że ładuje zdjęcie do następnej strony i troche to trwa, ale chcialbym to jakoś zatrzymać po zaladowaniu tej nastepnej strony. Bo teraz jak wcisne przycisk wstecz na przeglądarce to wraca ale jest ciemny ekran i loader zamiast treści:(

Blame
Ja tak może na chybił trafił, ale widzę, że jest to skrypt uploadu więc musi do tego być formularz. W tym miejscu warto wspomnieć, że jeśli w tymże masz input'a "image" to IE często ma z nim problemy. Rozwiązaniem jest zwykły submit ostylowany w CSS winksmiley.jpg
neo1986kk
można troszke to przybliżyć? ja zrobiłem cos takiego:
  1. function ns()
  2.  
  3. {
  4.  
  5. elem = document.getElementById("ms1");
  6.  
  7. elem.style.display = 'block';
  8.  
  9.  
  10. if(document.submit==true)
  11.  
  12. {
  13.  
  14. elem.style.display = 'none';
  15.  
  16. }
  17.  
  18. }
  19.  
  20. <input type="submit" value="ok" onclick="ns();"></input>
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.