Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php][cron jobs] Problem z lokalizacją pliku
yarek12
post
Post #1





Grupa: Zarejestrowani
Postów: 127
Pomógł: 0
Dołączył: 5.08.2010

Ostrzeżenie: (10%)
X----


Witam, mam skrypt php którym kopiuje pliki, wszystko działa, ale jak odpalam skrypt przez cron jobs to nie znajduje lokalizacji plików.

W skrypcie używam odnośników pośrednich.

np. : copy('../../files/'.$img, '../../files/thumbs/'.$img);

a jakich powinienem użyć?

Z góry dziękuje za pomoc
Go to the top of the page
+Quote Post
Tajgeer
post
Post #2





Grupa: Zarejestrowani
Postów: 290
Pomógł: 48
Dołączył: 11.05.2008
Skąd: Kielce

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


Próbowałeś użyć bezwzględnych ścieżek?
Go to the top of the page
+Quote Post
erix
post
Post #3





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Powinieneś użwać odnośników bezwzględnych albo określać katalog roboczy przed wykonaniem polecenia kopiowania.
Go to the top of the page
+Quote Post
yarek12
post
Post #4





Grupa: Zarejestrowani
Postów: 127
Pomógł: 0
Dołączył: 5.08.2010

Ostrzeżenie: (10%)
X----


jednak używając np.: http://adres.pl/files/plik.jpg też nie lokalizuje pliku, a co znaczy określić katalog roboczy?
Go to the top of the page
+Quote Post
Tajgeer
post
Post #5





Grupa: Zarejestrowani
Postów: 290
Pomógł: 48
Dołączył: 11.05.2008
Skąd: Kielce

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


  1. $path = dirname(__FILE__); // ścieżka bezwzględna


Ten post edytował Tajgeer 23.08.2012, 13:01:28
Go to the top of the page
+Quote Post
erix
post
Post #6





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




URL != ścieżka na dysku
Go to the top of the page
+Quote Post
abort
post
Post #7





Grupa: Zarejestrowani
Postów: 590
Pomógł: 107
Dołączył: 25.10.2011

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


Przykład:
root directory serwera (tam gdzie trzymasz np. główny index.html): /var/virtuals/www.domena.com
odnośnik http://www.domena.com/katalog1/kat2/katalog3/index.php

Plik na dysku będzie w /var/virtuals/www.domena.com/katalog1/kat2/katalog3/index.php
Jeśli teraz w tym (wyżej wymienionym) index.php odwołujesz się do '../../files/'.$img', to odwołujesz się de facto do /var/virtuals/www.domena.com/katalog1/files/'.$img

Sporo danych, które Cię interesują, powinieś znaleźć w PHP, w szczególności w tablicy $_SERVER
Go to the top of the page
+Quote Post
yarek12
post
Post #8





Grupa: Zarejestrowani
Postów: 127
Pomógł: 0
Dołączył: 5.08.2010

Ostrzeżenie: (10%)
X----


Dzięki za odpowiedzi, ale nie za bardzo rozumiem ja to wykorzystać.


plik które kopiuje pliki jest w public_html/modules/system/copy.php

a zdjęcia są w public_html/files/
Go to the top of the page
+Quote Post
Tajgeer
post
Post #9





Grupa: Zarejestrowani
Postów: 290
Pomógł: 48
Dołączył: 11.05.2008
Skąd: Kielce

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


Sprawdź mojego drugiego posta w tym temacie - masz tam rozwiązanie, jak wyciągnąć ścieżkę bezwzględną. Po prostu ją zastosuj w swoim skrypcie, który dodajesz do crona.
Go to the top of the page
+Quote Post
redeemer
post
Post #10





Grupa: Zarejestrowani
Postów: 915
Pomógł: 210
Dołączył: 8.09.2009
Skąd: Tomaszów Lubelski/Wrocław

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


Bez zmiany samego skryptu możesz w cronie zamiast: php /sciezka/do/pliku/plik.php zrobić: cd /sciezka/do/pliku; php plik.php
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 20:24