MozillaPL.org - polskie centrum Mozilli

Główne menu:

Problem z lokalnym zdjęciem

Dyskusje na temat standardów WWW i zgłoszenia stron niedziałających poprawnie w przeglądarkach z rodziny Mozilli (w tym Mozilla Firefox)

Moderator: Pomocy?!

Problem z lokalnym zdjęciem

Postautor: MiGoo » 10 stycznia 2006, 15:46

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8) Gecko/20051111 Firefox/1.5

Witam! Mam taki problemik. Otoz chcialbym wyswietlic na stronie zdjecie, ktorego zrodlo znajduje sie na lokalnym dysku. Sposob jest nastepujacy:

<img id='logo_img' src='file:///D:/1.gif' width='100' height='100' alt=''/>

Niestety ow zdjecie wyswietla sie jedynie w przegladarce IE, a w innych nie. Mianowicie FF, Mozilla i Netscape pracujacy w trybie Mozilli nic nie wyswietlaja, natomiast Opera jedynie okresla obszar zdjecia (100x100), ale o zdjeciu zapomina.

Wie ktos w czym moze byc problem? Czy istnieje mozliwosc wyswietlenia zdjecia lokalnego na stronie www?
MiGoo
 

Re: Problem z lokalnym zdjęciem

Postautor: athantor » 11 stycznia 2006, 21:59

Przeglądarka: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20051111 Firefox/1.5

MiGoo pisze:Wie ktos w czym moze byc problem?


Nieprawidłowe linki.

MiGoo pisze:Czy istnieje mozliwosc wyswietlenia zdjecia lokalnego na stronie www?


Poprzez wystawienie na serwerze.

Tak z ciekawości się zapytam. A jak ktoś tego pliku nie będzie miał na dysku?
Obrazek Obrazek
athantor
 
Posty: 911
Z nami od: 24 grudnia 2002, 15:22
Lokalizacja: Białystok

Re: Problem z lokalnym zdjęciem

Postautor: _Puma_ » 12 stycznia 2006, 09:34

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8) Gecko/20051111 Firefox/1.5

MiGoo pisze:Czy istnieje mozliwosc wyswietlenia zdjecia lokalnego na stronie www?


Istnieje sposób na to, takie zdjęcie TYLKO ty zobaczysz.
_Puma_
 
Posty: 702
Z nami od: 31 października 2005, 19:34

Postautor: MiGoo » 12 stycznia 2006, 11:27

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8) Gecko/20051111 Firefox/1.5

A mozna wiedziec jak ten sposob wyglada?

Jesli chodzi o to, kto to zdjecie zobaczy, wyjasnilem to juz tutaj: http://forum.php.pl/index.php?showtopic=39942
MiGoo
 

Postautor: KomarQ » 12 stycznia 2006, 11:39

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060111 Firefox/1.6a1

Opera, żeby coś wczytać z dysku lokalnego musi mieć 'localhost://...' albo coś w tym stylu, ale na pewno nie wyświetli nic, co się zaczyna od 'file:///...'. A żeby Fx coś wczytał, trzeba mu zezwolić w ustawieniach, a to wiąże się ze zmniejszonym bezpieczeństwem.
KomarQ
 
Posty: 611
Z nami od: 30 czerwca 2004, 22:13
Lokalizacja: Wrocław

Postautor: Titani... » 12 stycznia 2006, 11:46

Przeglądarka: Opera/8.51 (X11; Linux i686; U; pl)

Można bez najmniejszego problemu wyświetlić obrazek z lokalnego dysku...

wystarczy uruchomić u siebie serwer www :D
Titani...
 

Postautor: MiGoo » 12 stycznia 2006, 12:10

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8) Gecko/20051111 Firefox/1.5

Pracuje na lokalnym serwerze postawionym przeze mnie i nie dziala. Z reszta nie o to mi chodzi. Chodzi o to, by na serwerze nielokalnym postawiona byla strona, na ktorej jest mozliwosc podekrzenia wskazanego zdjecia bez jego uploadu. Upload ow zdjecia nastapi pozniej.
MiGoo
 

Postautor: MiGoo » 12 stycznia 2006, 12:33

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8) Gecko/20051111 Firefox/1.5

KomarQ pisze:Opera, żeby coś wczytać z dysku lokalnego musi mieć 'localhost://...' albo coś w tym stylu, ale na pewno nie wyświetli nic, co się zaczyna od 'file:///...'. A żeby Fx coś wczytał, trzeba mu zezwolić w ustawieniach, a to wiąże się ze zmniejszonym bezpieczeństwem.


W Operze wyglada to tak: file://localhost/d://1.gif , ale niestety nie dziala... :( (w IE oczywiscie zadzialalo :D)
MiGoo
 
Posty: 3
Z nami od: 12 stycznia 2006, 12:13
Lokalizacja: Bydgoszcz

Postautor: ls-lR » 10 lutego 2006, 11:07

Przeglądarka: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8) Gecko/20060113 Firefox/1.5

W Operze wyglada to tak: file://localhost/d://1.gif , ale niestety nie dziala... :( (w IE oczywiscie zadzialalo :D)[/quote]

a jak ja nie mam na SWOIM dysku czegos takiego jak d:/ ? to jak to mam mi wyswietlić?
bo kod html jest interpretowany przez przeglądarkę uzytkownika (a nie właściciela strony czy serwera)! rozumiesz? tu tkwi błąd ideologiczny - możesz przy pomocy input 'uploadować' plik na serwer ale to jest DECYZJA uzytkownika że jeden (i to konkretny) plik wysyła na jakiś serwer, nie jest możliwa (normalnie bez dziur w zabezpieczeniach) sytuacja że ktoś czyli projektant strony leżącej na odległym serwerze pobiera z dysku klienta plik (bo nawet nie zna struktury katalogów u klienta) i wyświetla w jego przeglądarce (i przeglądarkach innych użytkowników ?).
nie wiem czy rozumiesz ideologię działania www? Załóżmy że Ty robisz stronę na której jest wpis file:///localhost/a.gif (pomijam tą głupotę z d: mo mój linux nie ma literek dysków) i umieszczasz ją (html) na serwerze który ma adres powiedzmy www.serwerek1.com.
Więc moja przeglądarka pobiera html-a z owego serwerka1 i ją interpretuje (U MNIE). więc patrzy sobie na file:/// i mówi: "ok (zakładam że chwilowo jej to wolno) jest to plik z dysku lokalnego" oczywiście lokalnego w stosunku do tejże przeglądarki która właśnie interpretuje ten html - dalej patrzy że jest wpis 'localhost' (a ja przypadkiem mam uruchomionego apache-a) więc zagląda na localhosta (tu też chilowo wariuje, ale zakładamy że może) i ... zonk ! u MNIE na localhost nie mam pliku a.gif (a jest b.png ;-) ) i NIC NIE WYŚWIETLI - bo ... localhost to lokalna maszyna OGLĄDAJĄCEGO ! ! !

jak popatrzysz na to od strony php (który służy do generowania html-a po stronie serwera i wysyłania już gotowego kodu do przeglądarki kogoś nieznanego ;-) ) to localhost odnosi się tak samo do lokalnej maszyny, co w przypadku php oznacza komputer na którym owe php działa czyli serwer ale "localhost://a.gif" dla serwera to przecież nic innego jak "/a.gif" i tyle - żadnych czarów :-)

jeszcze raz: localhost (czy file://) odnosi sie do elementu znajdującego się na tej maszynie która 'bierze pod uwagę' dany kod - dla php jest to serwer, dla html-a (podczas jego INTERPRETACJI czyli wyświetlania) jest to dysk użytkownika.

Gdyby powyższa sytuacja była rzeczywiście możliwa (tzn. strona www mogła 'grzebać' po dysku odwiedzającego daną stronę) to wszystkie nasze pliki z naszych dysków byłyby wysyłane do wszystkich ludzi w sieci ! Np. jakaś pętla w js pobierająca *.* i robiąca upload na serwer ! dodatkowo rozpoznając co jest katalogiem i wtedy cd katalog i dalej *.* i upload aż do końca dysku !
Czy to nie abdurd ? Nie po to wymyślono www

ls-lR
ls-lR
 

Postautor: MiGoo » 10 lutego 2006, 11:19

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1

No masz racje, ale ja nie napisalem, ze chce w kodzie na sztywno wrzucic linka do pliku, ktory znajduje sie na komputerze klienta. I wiem jak wyglada system plikow pod winda czy linuksem, a d:\ to byl tylko przyklad windowsowej partycji.

Jesli masz gdzies mozliwosc przegladania stron pod IE, to polecam looknac na strone: http://www.auto.pl/gielda/dodawanie_ogloszenia.php?rd=o i wybrac w polu input jakies zdjecie (przykladowe z dysku). Pod IE automatycznie sie zaladuje (dzieki odpowiedniemu kodowi w JS) i wyswietli na stronie (bez uploadu na serwer), pod innymi przegladarkami ta sztuka sie nie udaje.

Zrobilem wiec tak, ze jesli klient wchodzi pod IE, to ma mozliwosc podgladu grafiki, jaka chce wgrac na serwer, natomiast pod innymi przegladarkami nie. Lepszego sposobu nie znalazlem niestety...
MiGoo
 
Posty: 3
Z nami od: 12 stycznia 2006, 12:13
Lokalizacja: Bydgoszcz

Postautor: ls-lR » 10 lutego 2006, 15:01

Przeglądarka: Mozilla/5.0 (Windows; U; Win98; pl-PL; rv:1.7.12) Gecko/20050919 Firefox/1.0.7

MiGoo pisze:No masz racje, ale ja nie napisalem, ze chce w kodzie na sztywno wrzucic linka do pliku, ktory znajduje sie na komputerze klienta. I wiem jak wyglada system plikow pod winda czy linuksem, a d:\ to byl tylko przyklad windowsowej partycji.


właśnie, że pisałeś: cytuję Cię:
MiGoo pisze:Witam! Mam taki problemik. Otoz chcialbym wyswietlic na stronie zdjecie, ktorego zrodlo znajduje sie na lokalnym dysku. Sposob jest nastepujacy:

<img id='logo_img' src='file:///D:/1.gif' width='100' height='100' alt=''/>


koniec cytatu :-)

MiGoo pisze:Jesli masz gdzies mozliwosc przegladania stron pod IE, to polecam looknac na strone: http://www.auto.pl/gielda/dodawanie_ogloszenia.php?rd=o i wybrac w polu input jakies zdjecie (przykladowe z dysku). Pod IE automatycznie sie zaladuje (dzieki odpowiedniemu kodowi w JS) i wyswietli na stronie (bez uploadu na serwer), pod innymi przegladarkami ta sztuka sie nie udaje.


znalazłem windowsa :-)...
więc ta strona (oprócz tego że roi się od błędów) generuje RÓŻNY kod dla różnych przeglądarek: np. dla IE obsługa tego przycisku 'file' wygląda tak:

Kod: Zaznacz cały
  <td class="so" align="middle" width="75" valign="top"> 1</td>
  <td class="so" align="right" width="240" valign="top">
   <div id="divz_t">
    <input type="file" name="z_t" class="pl"  onChange="pokaz_zdjecie(this.form,'z_t')">
   </div>
  </td>


a dla mozilli, opery etc, tak (tak, tak... to ten sam fragment) :

Kod: Zaznacz cały
  <td class="so" width="155"> zdjęcie 1</td>
  <td class="so" width="155">
   <input type="file" name="z_t" id="z_t" />
  </td>


więc widać choćby z tego, że nie ma żadnego mechanizmu który pokaże ten obrazek w przeglądarkach innych niż 'jedyniesłuszne' (w dodatku tylko w wersji >=6.0)
Problem leży nadal w idei a nawet w ideach :-)

MiGoo pisze:Zrobilem wiec tak, ze jesli klient wchodzi pod IE, to ma mozliwosc podgladu grafiki, jaka chce wgrac na serwer, natomiast pod innymi przegladarkami nie. Lepszego sposobu nie znalazlem niestety...


...lepszy sposób to: poprawne skrypty !

To że podobne rzeczy nie są niemożliwe widać choćby po stronach allegro gdzie w mozilli, operze etc da się takie rzeczy zrobić :-). Możesz tam 'podglądnąć' kod js... (na stroniach wystawiania przedmiotu :-) )
a ta strona auto.pl (jeśli nie jest twoja) jest złym przykładem do naśladowania...[/code]
ls-lR
 

Postautor: MiGoo » 10 lutego 2006, 15:17

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.1) Gecko/20060111 Firefox/1.5.0.1

Odnosnie pierwszego cytatu - byl to PRZYKLAD ktory mial pokazac o co chodzi (a chodzilo o wyswietlenie zdjecia bez uploadu na stronie www).


Odnosnie allegro - oni zrobili to w ten sposob, ze jak tylko wybierze sie jakies zdjecie, to automatycznie jest ono uploadowane na serwer i wyswietlane z serwera. Jak juz wczesniej wspominalem nie mam zamiaru uploadowac zdjecia przed jego podgladem (podglad to tylko ciekawostka dla userow IE - jak sie okazuje).

A zrobilem w ten sposob, ze w zaleznosci od przegladarki albo jest ta mozliwosc podgladu albo nie. Nie mam wspolnego kodu JS dla wszystkich. :)
MiGoo
 
Posty: 3
Z nami od: 12 stycznia 2006, 12:13
Lokalizacja: Bydgoszcz


Wróć do Standardy WWW i źle działające strony

Kto jest online

Zarejestrowani użytkownicy: Baidu [Spider], Bing [Bot], Google [Bot]

Przejdź do powiązanej strony

Nawigacja:

Stopka: