![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witajcie,
może ktokolwiek już się spotkał z podobną sytuacją: za pomocą is_uploaded_file() robię upload pliku przez formularz (type='file' name ='attach'). Skrypt wygląda tak:
Założenie jest takie, aby powyższa funkcja wywoływana przy SUBMIT formularza zwróciła nazwę pliczku jeżeli plik jest wysyłany lub null jeżeli pliku nie ma. Problem polega na tym, że przy wskazaniu pliku (który na marginesie jest kopiowany do 'c:wamp/www/live/modules/hd/attachements/' i pojawia się tam) funkcja za każdym razem zwraca null - zarówno w przypadku kiedy plik ładujemy jak i w przypadku kiedy pliku nie ma. Pls o spojrzenie 'świeżym okiem'. (IMG:style_emoticons/default/smile.gif) |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
a nie brakuje Tobie klamry za IF'em?
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Przeoczenie.. ale to nie to. Poniżej poprawiony kod, ta sama sytuacja..
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Pierwsze pytanie, jakie się ciśnie, brzmi: a jaki to ma związek z programowaniem obiektowym?
Znając życie, pewnie masz skopany sam kod formularza, któremu brakuje atrybutu enctype="multipart/form-datas", co zmienia zupełnie działanie PHP. Inna sprawa, że funkcja is_uploaded_file() potrzebna Ci jest, jak piernik wiatrakowi. Jej funkcjonalność jest w całości wbudowana w move_uploaded_file(), zatem w Twoim przypadku nie ma żadnego racjonalnego powodu by jej używać. Koncentrujesz się na takich bzdetach, a nie robisz dość oczywistego testu na to czy zmienna $_FILES['attach'] w ogóle istnieje. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
Związek ma taki, że jest to metoda w klasie do obsług plików.
Formularz nie zawiera błędów, po za tym enctype="multipart/form-data". Z is_uploaded_file korzystam ponieważ potrzebuję aby metoda zwróciła mi tekst także wtedy jeżeli plik nie jest załączany. PS. tak jak pisałem plik jest przesyłany na serwer. Ale metoda zawsze zwraca null... Ten post edytował yarexxx 20.10.2010, 13:36:03 |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 952 Pomógł: 154 Dołączył: 20.01.2007 Skąd: /dev/oracle Ostrzeżenie: (0%) ![]() ![]() |
Twój problem nie ma żadnego związku z programowaniem obiektowym, a to, że używasz metod, nie ma tu nic do rzeczy. Ponadto dokładnie ten sam efekt osiągniesz, stosując move_uploaded_file(). Jak wspomniałem, te funkcje są tożsame i w Twoim przypadku nie ma ŻADNEGO racjonalnego powodu, by używać is_uploaded_file(), a testowanie czy plik był załączany, jak również wspomniałem, powinno być robione w inny sposób.
Pierwsze to zrób sobie test: by zobaczyć czy coś w ogóle dostajesz. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 6 Pomógł: 0 Dołączył: 24.09.2009 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.09.2025 - 03:31 |