[PHP]Upload plików + sesja

Języki, których efekty są wykonywane po stronie serwera. PHP, ASP czy CGI w połączeniu z bazami danych SQL dają niezwykłe możliwości budowy i zarządzania stron WWW. Tu zadajemy pytania oraz demonstrujemy kod, z którym mamy problem.
Sumer
Nowy
Nowy
Posty: 26
Rejestracja: wt sty 17, 2006 10:02 pm

[PHP]Upload plików + sesja

Post autor: Sumer »

Witam,
zwykły upload potrafie sobie zrobić, ale potrzebuje takiego nietypowego, a mianowicie:
po wybraniu pliku chce aby jego ścieżka była przechowywana w sesji a nastepnie dopiero wtedy kiedy nadejdzie pora twożyła by sie jego miniaturka (nie koniecznie) i wgrywana była na serwer w odpowiednie miejsce pod odpowiednią nazwa.

Czy potwafiłby ktoś mi taki skrypt wyskrobać?

Ostatecznie jeżeli niebędzie sie dalo to może być tak ze odrazu tworzy sie miniaturka i wgrywa na serwer a potem tylko zmienia sie jej nazwa.
Krzysztof Aszkiełowicz
Zaczyna działać
Zaczyna działać
Posty: 458
Rejestracja: pn maja 26, 2003 9:29 pm
Lokalizacja: Warszawa
Kontakt:

Re: [PHP]Upload plików + sesja

Post autor: Krzysztof Aszkiełowicz »

1. się nie da
2. normalny upload, zapamiętujesz nazwę pliku, i rename()
koziolek
Przelotem
Przelotem
Posty: 387
Rejestracja: sob paź 21, 2006 10:07 pm
Kontakt:

Re: [PHP]Upload plików + sesja

Post autor: koziolek »

1. wprost nie da się. Można zrobić tak ze zapisujesz plik w tmp. i jego ścieżkę dopisujesz do $_SESSION["sceizka"] = "$sciezka"; następnie kopiujesz plik. Oczywiście najlepiej by w momencie kończenia sesji usuwać plik. Metoda na około, ale ma szansę powodzenia.
123456
Zaczyna działać
Zaczyna działać
Posty: 514
Rejestracja: sob paź 28, 2006 1:19 pm

Re: [PHP]Upload plików + sesja

Post autor: 123456 »

po wybraniu pliku chce aby jego ścieżka była przechowywana w sesji a nastepnie dopiero wtedy kiedy nadejdzie pora twożyła by sie jego miniaturka (nie koniecznie) i wgrywana była na serwer w odpowiednie miejsce pod odpowiednią nazwa.
Wszystko się da, tylko niektóre rzeczy są trudniejsze do zrobienia... Rozwiązanie: AJAX + PHP
Czy potwafiłby ktoś mi taki skrypt wyskrobać?
Potrafiłby, ale na forum nikt nie daje gotowego kodu. Pomaga się przy konkretnym problemie, tak więc kombinuj a w razie problemów pytaj na forum.
Krzysztof Aszkiełowicz
Zaczyna działać
Zaczyna działać
Posty: 458
Rejestracja: pn maja 26, 2003 9:29 pm
Lokalizacja: Warszawa
Kontakt:

Re: [PHP]Upload plików + sesja

Post autor: Krzysztof Aszkiełowicz »

123456 pisze:Wszystko się da, tylko niektóre rzeczy są trudniejsze do zrobienia... Rozwiązanie: AJAX + PHP
a to ciekawe, upload przez AJAX, ale czytałem, że trzeba zmieniać ustawienia bezpieczeństwa przeglądarki i jest to niebezpieczne bo strona ma dostęp do całego dysku i może ściągnąć, co

Ale jak Pan 123456 twierdzi, to proszę o przykład, który nie wykorzystuje zmiany bezpieczeństwa, działa pod wszystkimi przeglądarkami, i robi faktycznie upload w dowolnym momencie, tak aby nie posądzić Pana 123456 o gołosłowność.
123456
Zaczyna działać
Zaczyna działać
Posty: 514
Rejestracja: sob paź 28, 2006 1:19 pm

Re: [PHP]Upload plików + sesja

Post autor: 123456 »

Sądźcie mnie o co chcecie.

Niech Pan będzie poważny... nie napisze na forum kodu, który ma swoją cenę. Poza tym wątpię czy napisałby Pan tyle kodu tylko po to żeby pokazać, że się da a i tak spotkać się z dezaprobatą. Na prowokacje nie odpowiadam.

Nie muszę się dowartościowywać pokazywaniem kodu na forum a o gołosłowność się nie boję.
bo strona ma dostęp do całego dysku
A czy gdzieś napisałem, że plik zostanie wysłany bez wiedzy użytkownika? Kiedy jest zwykły upload też ma się dostęp do całego dysku. Firefox ma pewien specyficzny błąd w związku z odczytem plikow z dysku o którym wie niewielu user'ów a jednak na poprawkę trzeba było czekać do wersji 2.0.0.4. To takie małe wtrącenie na temat bezpieczeństwa.
upload w dowolnym momencie
Tego @Sumer nie napisał...
po wybraniu pliku chce aby jego ścieżka była przechowywana w sesji a nastepnie dopiero wtedy kiedy nadejdzie pora twożyła by sie jego miniaturka (nie koniecznie) i wgrywana była na serwer w odpowiednie miejsce pod odpowiednią nazwa.
Ścieżkę można wysłać przez AJAX'a, no chyba, że znowu mnie będą sądzić. Dalej czytamy: dopiero wtedy kiedy nadejdzie pora więc to nie to samo co "dowolny moment". Albo niech Pan trzyma się oryginału albo nie czepia się. Nie podano również czy użytkownik ma mieć później jakiś wpływ na wysyłany plik, czy będzie cały czas na tej samej stronie i wielu innych ważnych rzeczy. Przy takiej uproszczonej specyfikacji nie sądzę aby programista z doświadczeniem twierdził, że się nie da. Nie wzięto pod uwagę tylu czynników potrzebnych do ścisłego ustalenia warunków w jakim ma działać skrypt, że wyskakiwanie z wielkim oburzeniem do nieznanej sobie osoby i osądzanie jej, że opowiada bajki, daje do myślenia nad celowością Pańskiego posta...

Ot tyle co mam do napisania. Czekam na posądzenie o gołosłowność. Wrzucę sobie Pański zarzut do sygnaturki na pamiątkę.
Krzysztof Aszkiełowicz
Zaczyna działać
Zaczyna działać
Posty: 458
Rejestracja: pn maja 26, 2003 9:29 pm
Lokalizacja: Warszawa
Kontakt:

Re: [PHP]Upload plików + sesja

Post autor: Krzysztof Aszkiełowicz »

Nie wątpię, że ma swoją cenę, mi tam w sumie niepotrzebny.

http://www.captain.at/ajax-file-upload.php tutaj jest chyba ten cenny kod

Jednakże, co to za filozofia wgrać plik na serwer i użyć go wtedy jeśli chcemy, takie rozwiązanie to zwykły upload, a Sumer'owi chodziło chyba o wgranie jego w dowolnej chwili.

Ja nic nie zarzucam :) po prostu chciałem się przy okazji czegoś nauczyć widać nie można, bo wszystko ma swoją cenę. :)
Kiedy jest zwykły upload też ma się dostęp do całego dysku.
Chyba nie za bardzo rozumiem.

Się Pan zbulwersował strasznie, a ja chciałem się tylko czegoś nauczyć, w żadnym razie nie była to żadna prowokacja, po prostu twierdzę, że wysyłanie pliku bez przeładowania strony nie jest łatwym zadaniem ew. działa jedynie w FF przy wykorzystaniu artykułu, który podlinkowałem wyżej.

Jeśli Pana uraziłem, to najmocniej przepraszam!
123456
Zaczyna działać
Zaczyna działać
Posty: 514
Rejestracja: sob paź 28, 2006 1:19 pm

Re: [PHP]Upload plików + sesja

Post autor: 123456 »

Jednakże, co to za filozofia wgrać plik na serwer i użyć go wtedy jeśli chcemy, takie rozwiązanie to zwykły upload, a Sumer'owi chodziło chyba o wgranie jego w dowolnej chwili.
No żadna filozofia... Sumer nie określił dokladnie co chce osiagnac dlatego tez sa rozne interpretacje. Szczerze mówiąc plik i tak trzeba wybrać więc można wtedy tez zrobić upload i po bólu.
ODPOWIEDZ