Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] Uprawnienia do tworzenia pliku przez skrypt - problem
Forum PHP.pl > Forum > Przedszkole
jaceklo
Mam skrypt (powiedzmy, że nazywa się m.php), który tworzy miniaturki zdjęć znajdujących się na serwerze.

Zdjęcie chcę zapisać na dysku używając do tego funkcji:
imagejpeg($minitaturka,$sciezka,85);

Gdzie $miniaturka jest już wynikowym zdjęciem, a zmienna $sciezka zawiera ścieżkę (względem położenia skryptu m.php) do której chcę zapisać plik.
I tu pojawia się problem, gdyż nie mogę zapisać zdjęcia w innej lokalizacji niż ta, z której zdjecie pobieram.
Przy próbie zapisania zdjęcia w innym katalogu (np. "miniatury" pojawia się błąd:

  1. [11-Jun-2010 09:32:08] PHP Warning: imagejpeg() [<a href='function.imagejpeg'>function.imagejpeg</a>]: Unable to open 'miniatury/katalog/podkatalog/zdjecie.jpg' for writing: No such file or directory in /home/modelerc/public_html/modelerc/m.php on line 66


I teraz mam pytanie jak nadać uprawnienia skryptowi w taki sposób, aby możliwe było zapisanie wynikowego pliku w danej lokalizacji.

Czytałem trochę o możliwościach .htaccess, ale doczytałem sie tylko jak możliwe jest zablokowanie dostępu do danego katalogu, a ja bym chciał wiedzieć jakudostępnić folder dla skryptu. Czy da się to zrobić w .htaccess czy trzeba w inny sposób?

Dodam jeszcze, ze struktura katalogów i podkatalogów w mianiaturach jest dość skomplikwoana i chciałbym, zeby skrypt również (poza plikami) mógł tworzyć katalogi



Wiktor P.
Zmień chmody na 777.
W kliencie FTP pewnie będzie taka opcja po kliknięciu prawego knefla myszki na danym katalogu.
jaceklo
Cytat(Wiktor P. @ 14.06.2010, 17:46:59 ) *
Zmień chmody na 777.
W kliencie FTP pewnie będzie taka opcja po kliknięciu prawego knefla myszki na danym katalogu.


Używam Total Comandera, znalazłem tę opcję w menu, zmieniłem dla katalogu "miniatury" atrybut na 777 i nie pomogło.
Potem stworzyłem ręcznie strukturę katalogów i również nadałem uprawnienia na 777 i znowu nie zadziałało.


Próbowałem również zmienić atrybuty skryptu, ale też bez skutku.

Co można zrobić, aby zapisywanie zdjęć w wybranej lokalizacji działało? Ewentulanie czego szukać w sieci?

Jeśli potrzeba mogę wrzucić cały skrypt, może gdzieś po drodze jest błąd?
kchrapa
Witam!

Hmm, to raczej nie kwestia uprawnień, ale braku odpowiedniego katalogu "no such file or directory" a nie "permission denied".

Twoj skrypt jest w katalogu:

/home/modelerc/public_html/modelerc/

pytanie : czy na pewno katalog: miniaturki/katalog/podkatalog
jest w /home/modelerc/public_html/modelerc/

a nie np. w:
/home/modelerc/public_html/

?

Jesli to drugie, to przestaw sciezke na: "../miniaturki/katalog/podkatalog"
czyli wyjdz pietro wyzej (../) i wtedy podaj sciezke.

Skoncentruj sie raczej na ścieżce...

Pozdrawiam serdecznie,
Kacper

jaceklo
Cytat(kchrapa @ 14.06.2010, 23:12:45 ) *
Hmm, to raczej nie kwestia uprawnień, ale braku odpowiedniego katalogu "no such file or directory" a nie "permission denied".
(...)
Skoncentruj sie raczej na ścieżce...


Dzięki smile.gif, jestem już coraz bliżej rozwiązania.
Umiejscowienie skryptu i ścieżki było prawidłowe, jednak gdy ręcznie tworzyłem strukturę katalogów to zrobiłem literówkę...

Aczkolwiek nadal mój problem nie jest do końca rozwiązany: Aktulanie muszę ręcznie tworzyć strukturę katalogów i podkatalogów.
Jak można zrobić w prosty sposób, aby skrypt zapisując plik tworzył od razu potrzebny katalog i podkatalog?
kchrapa
Pewnie pomoze: http://pl.php.net/manual/en/function.mkdir.php ;-)

Pozdrawiam,
Kacper Chrapa
jaceklo
Cytat(kchrapa @ 15.06.2010, 08:16:13 ) *


Dzięki, pomogło smile.gif, teraz tworzenie miniaturek działa bez problemu smile.gif
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.