Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem z przesłąniem plików na serwer, xampp pod Linuxem
paul14x
post
Post #1





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 28.02.2008
Skąd: Ostrołęka

Ostrzeżenie: (0%)
-----


Skrypt działał pod Windowsem na Vertrigo i AppServ , więc mniemam iż jest poprawny. Jak przeszedłem na Mandrive i zainstalowałem xamppa mam problem z przeslaniem pliku na serwer. I nie jest to żaden błąd spowodowany odwrotnymi ukośnikami w ścieżkach, niedozwolonymi znakami czy złym kodowaniem, gdyż pliku jakby wogóle nie kopiowało jako tymczasowego gdyż po:
foreach($_FILES['plik'] as $k=>$w)
echo "$k : $w<br>";

otrzymuję:

name : test_partner.csv
type :
tmp_name :
error : 6
size : 0

a bez tmp_name nie mogę: copy($tmp_name,"import/".$nazwa_pliku); gdyż tu skrypt się rozjeżdża.

Plikowi z importu nadałem prawa 777, skrypt wykonałem jako root z przeglądarki konsolowej, ale to samo.

1. Spotkał się już ktoś z podobnym problemem?
2. Gdzie mogę znaleźć katalog na pliki tymczasowe serwera, może tu trzeba zmienić prawa dostępu?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
webdice
post
Post #2


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Nie spotkałem się z błędem numer 6. Standardowo katalog tymczasowy to /tmp. Sprawdź czy użytkownik uruchamiający PHP ma dostęp do tego katalogu oraz sprawdź czy ta ścieżka jest w ogóle ustawiona w php.ini. Chociaż jeśli byłoby z tym coś nie tak PHP zwróciło by stosowny komunikat, ale na wszelki wypadek można popatrzeć.
Go to the top of the page
+Quote Post
paul14x
post
Post #3





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 28.02.2008
Skąd: Ostrołęka

Ostrzeżenie: (0%)
-----


Do /tmp ma uprawnienia każdy user, więc to nie to. Wstyd się przyznać, ale nigdy do tego pliku nie zaglądam.. który element php.ini ma zawierać ścieżkę /tmp?
Go to the top of the page
+Quote Post
webdice
post
Post #4


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Kod
upload_tmp_dir = "/tmp"
Go to the top of the page
+Quote Post
paul14x
post
Post #5





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 28.02.2008
Skąd: Ostrołęka

Ostrzeżenie: (0%)
-----


O to własnie chodziło, PHP nie miał ustawionego folderu /tmp.
Jednak mam jeszcze jakiś błąd z funkcją copy, nie wiem o co chodzi..
Już teraz jest:

name : test_partner.csv
type : text/comma-separated-values
tmp_name : /tmp/phprAgfZP
error : 0
size : 203

ale:

Warning: copy(import/test_partner.csv) [function.copy]: failed to open stream: Brak dostępu in /opt/lampp/htdocs/partner/templates/zalog_adm.inc.php on line 539

Skąd taki błąd?
Go to the top of the page
+Quote Post
webdice
post
Post #6


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Korzystaj z move_uploaded_file" title="Zobacz w manualu PHP" target="_manual.
Go to the top of the page
+Quote Post
paul14x
post
Post #7





Grupa: Zarejestrowani
Postów: 22
Pomógł: 0
Dołączył: 28.02.2008
Skąd: Ostrołęka

Ostrzeżenie: (0%)
-----


Zastanawiałem się co to za błąd, bo wszystkie pliki miały niby uprawnienia.
Poszłem na łatwiznę, zrobiłem:

chmod -R 777 /opt/lampp
chmod -R 777 /tmp

I pozbyłem się natrętnego błędu.
Noto już wiemy co może komunikować error: 6.

Dzięki za pomoc webdicepl.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 00:08