Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]uruchamianie skryptu
malminiart
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 16.05.2009
Skąd: GB

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


Witam. O ile dobrze rozumiem skrypt php dziala po stronie serwera po uruchomieniu strony.
Jezeli ktos wchodzi na moja strone to uruchamia moj skrypt PHP.

Pytanie brzmi: Czy jest jakas mozliwosc uruchomienia skryptu w okreslonym momencie (data) jezeli nikt w tym dniu nie wejdzie na moja strone? Bo jezeli nikt nie wchodzi na strone to skrypt nie pracuje.

Np. Ustawiam na 15.09.2009 ze php wysle e-mail o tresci "jeszcze nikogo nie bylo na twojej stronie" jezeli nikogo nie bedzie.
Czy to jest wogole mozliwe do zrealizowania?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
CyberDuck_
post
Post #2





Grupa: Zarejestrowani
Postów: 135
Pomógł: 15
Dołączył: 17.08.2009

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


Po co mam pisac dodatkowy skrypt zeby uruchomic inny
to ja nie wiem skoro mozna jednym wpisem zalatwic
sprawe z cron ?
Co do chmod zgodze sie, ale jesli chcesz sie tak juz
przepychac to chmod 0700 pozwoli jedynie wykonac :
  1. [x] odczytywanie przez właśc.
  2. [x] zapisywanie przez właśc.
  3. [x] wykonywanie przez właśc.
  4. [ ] odczytywanie przez grupę
  5. [ ] zapisywanie przez grupę
  6. [ ] wykonywanie przez grupę
  7. [ ] odczytywanie przez innych
  8. [ ] zapisywanie przez innych
  9. [ ] wykonywanie przez innych

Tak wiec jesli chcesz aby kazdy to wykonal bez specjalnego
logowania sie do shell np poprzez ftpd to musialoby
byc chmod 0755 :
  1. [x] odczytywanie przez właśc.
  2. [x] zapisywanie przez właśc.
  3. [x] wykonywanie przez właśc.
  4. [x] odczytywanie przez grupę
  5. [ ] zapisywanie przez grupę
  6. [x] wykonywanie przez grupę
  7. [x] odczytywanie przez innych
  8. [ ] zapisywanie przez innych
  9. [x] wykonywanie przez innych


ale ja sie tam nie znam ... (IMG:style_emoticons/default/worriedsmiley.gif)
Poprostu nadanie praw poprzez +x ma najwyzszy priorytet
procz nadania wlasciciela do pliku i jest wygodniejsze bo w momencie
pisania skryptu zazwyczaj piszacy chce miec wglad do sprawdzania
czy to dziala, a najlatwiejsza i najszybsza metoda na to jest
wpisanie z linii komend php - f ... albo wywolanie teg skryptu
jak zwykla strone. Jesli ustawisz w 700 to nie bedziesz mogl tego
sprawdzic z poziomu httpd.

Zamiast php -f mozna dac php -q .
  1. [root@Serwer ~]# php -h
  2. Usage: php [options] [-f] <file> [args...]
  3. php [options] -r <code> [args...]
  4. php [options] [-- args...]
  5. -a Run interactively
  6. -c <path>|<file> Look for php.ini file in this directory
  7. -n No php.ini file will be used
  8. -d foo[=bar] Define INI entry foo with value 'bar'
  9. -e Generate extended information for debugger/profiler
  10. -f <file> Parse <file>.
  11. -h This help
  12. -i PHP information
  13. -l Syntax check only (lint)
  14. -m Show compiled in modules
  15. -r <code> Run PHP <code> without using script tags <?..?>
  16. -s Display colour syntax highlighted source.
  17. -v Version number
  18. -w Display source with stripped comments and whitespace.
  19. -z <file> Load Zend extension <file>.
  20.  
  21. args... Arguments passed to script. Use -- args when first argument
  22. starts with - or script is read from stdin

Ostatnio mialem przy pisaniu skryptu obslugujacego ekg2 problem z -f, a
w to miejsce pomoglo -q

Co do nadawania uprawnien z root moze i masz racje.
Ja zawsze zazwyczaj wykorzystywalem w skryptach :

i stad wymagania wiekszych uprawnien niz zwykle.
Moze przy wyslaniu z cron email nie potrzeba juz dodatkowych
wpisow do visudo. Trzeba sprawdzic. Napisalem to po to zeby
wiedzial z czym to sie moze wiazac jesli nadal skrypt nie bedzie
chcial sie wykonac.

Ten post edytował CyberDuck_ 8.09.2009, 13:33:06
Go to the top of the page
+Quote Post
MiChaSSs
post
Post #3





Grupa: Zarejestrowani
Postów: 65
Pomógł: 4
Dołączył: 6.09.2007

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


Cytat(CyberDuck_ @ 8.09.2009, 14:30:27 ) *
Po co mam pisac dodatkowy skrypt zeby uruchomic inny
to ja nie wiem skoro mozna jednym wpisem zalatwic
sprawe z cron ?
(...)

A gdzie ja tak napisalem? (IMG:style_emoticons/default/smile.gif) Piszac to na poczatku kazdego pliku php:
  1. #!/usr/bin/php -q <---- a to mi chodzi
  2. <?php
  3. // Tutaj skrypt skrypt napisany w jezyku PHP
  4. ?>

"mowisz" konsoli, ze jest to plik, ktory ma byc interpretowany jako plik PHP (dziala to tylko jesli PHP jest skompilowane jako CGI) i nie jest mu potrzebny Apache itd. - stad wlasnie opcja -q. Nie przepycham sie, tylko chce kolege nauczyc jak to dobrze zrobic, a nie zeby tylko dzialalo. Jesli kolega chce to wrzucic do cron-a to znaczy, ze nie chce zeby ktos mu ten plik sam odpalal stad chmod 700. I nieprawda jest ze nie mozna podgladnac pliku ktory ma chmod 700, bo przeciez zamiast przekierowywac wyjscie do /dev/null w cron-ie mozna to skierowac do pliku logujacego (owszem, nie bedzie mogl go wykonac kiedy mu sie to podoba bo cron sie tym zajmie), wiec taki wpis zalatwi sprawe:
  1. * * * * * /home/user/skrypt.php >> /home/user/logi.txt 2>&1


pozdr MD (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post

Posty w temacie
- malminiart   [PHP]uruchamianie skryptu   7.09.2009, 06:20:39
- - Crozin   Szukaj za "Cron"   7.09.2009, 06:23:12
- - franki01   http://pl.wikipedia.org/wiki/Crontab W panelach ad...   7.09.2009, 06:24:37
- - malminiart   OK! Niby wszystko jasne. Prosze o wyrozumialos...   7.09.2009, 06:57:26
- - Crozin   Cron to tak w dużym skrócie: program działający na...   7.09.2009, 14:04:15
- - jinks   Od biedy pod windą jest też 'harmonogram zadań...   7.09.2009, 17:48:13
- - MiChaSSs   poszukaj w google hasla "webcron" - (pol...   7.09.2009, 17:51:54
- - Crozin   @MiChaSSs: Oczywiście, że jest lepszym. Trzeba tyl...   7.09.2009, 18:37:29
- - malminiart   Cytat(Crozin @ 7.09.2009, 14:04:15 ) ...   7.09.2009, 23:09:40
|- - MiChaSSs   Cytat(malminiart @ 8.09.2009, 00:09:4...   8.09.2009, 07:49:28
- - Larges   Hmm. Jeśli jesteś właścicielem domeny i nie masz d...   7.09.2009, 23:18:22
- - CyberDuck_   To zalezy od administratora serwera na, ktorym mas...   7.09.2009, 23:24:41
|- - Larges   Cytat(CyberDuck_ @ 8.09.2009, 00:24:4...   7.09.2009, 23:36:22
- - CyberDuck_   Jeszcze jedna wazna informacja dla Ciebie bo co pr...   8.09.2009, 09:35:22
- - MiChaSSs   nie do konca sie zgodze z kolega CyberDuck_ Skoro...   8.09.2009, 11:22:15
- - CyberDuck_   Po co mam pisac dodatkowy skrypt zeby uruchomic in...   8.09.2009, 13:30:27
|- - MiChaSSs   Cytat(CyberDuck_ @ 8.09.2009, 14:30:2...   8.09.2009, 15:37:17
- - CyberDuck_   Mozna i tak. Moze ja nie doczytalem gdzie dopisuje...   8.09.2009, 17:25:42
- - malminiart   no to zesmy pogadali panowie... teraz to ja juz ni...   9.09.2009, 00:38:35
- - MiChaSSs   Nooo juz nie przesadzaj wszystko masz ladnie opis...   9.09.2009, 07:55:41
- - CyberDuck_   Dokladnie. Wiesz ... tak odchodzac od tematu ... j...   9.09.2009, 09:36:11


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: 26.12.2025 - 09:59