Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Błąd w skrypcie czy cron nie działa?
Forum PHP.pl > Forum > Przedszkole
arkos
ROZWIĄZANE
wookieb
Komenda jaką powinieneś dodać to
Kod
php /home/xxx/public_html/skrypt.php
arkos
No nie działa nadal ;/
nospor
nie wiem na czym polega twoje niedzialanie, ale skrypt odpalany z crona napewno nie obsluzyc ci tego:
echo '<iframe src=http://'.$row['ip'].':'.$row['port'].'/admin.cgi?mode=updinfo&pass='.$row['haslo'].'&song='.$tekst.'></iframe><br />';
a dokladniej tego iframe co tam generujesz
trucksweb
a pewny jestes ze taka masz sciezke na serwerze od roota ?

upewnij sie u swojego uslugodawcy jak powinna poprawnie wygladac.
arkos
To czym to mogę zastąpić bo właśnie o to chodzi aby to wykonywał.
nospor
chociazby CURL
arkos
Ok, spróbuje smile.gif
Dziękuję za odpowiedzi myślę, że temat do zamknięcia.
nospor
Cytat
że temat do zamknięcia.
Nigdy ale to przenigdy nie kasuj początkowej tresci tematu bez powodu co też tutaj uczyniłeś.
arkos
Skrypt usunąłem ponieważ nie chciałem aby ktoś go kopiował i wykorzystywał. A jak by było taka możliwość mógłby ktoś podać przykład jak zamienić <iframe> cURLem ? bo oglądałem różne strony i wpisywałem np:
  1. $curl = curl_init();
  2. curl_setopt($curl, CURLOPT_URL, 'http://'.$row['ip'].':'.$row['port'].'/admin.cgi?mode=updinfo&pass='.$row['haslo'].'&song='.$tekst.'');
  3. curl_exec($curl);
  4. curl_close($curl);

No ale nie działa mellow.gif
nospor
Cytat
Skrypt usunąłem ponieważ nie chciałem aby ktoś go kopiował i wykorzystywał
Jak nie chcesz by ktos wykorzystywal twojego dziela to nie umieszczaj go na internecie a w szczegolnosci na tym forum.
A jak juz umiescisz na tym forum to nie zdziw sie, ze przy nastepnym usunięciu tresci, na którą już ktoś odpowiadał, dostaniesz moderke.
arkos
Już wiem i nie będę usuwał, a jak coś będę dawał np. połowę skryptu tę co dotyczy tematu. A powracając wie ktoś jak to poprawnie zrobić?
CyberDuck_
Jesli chcesz zeby Ci cron wykonal cokolwiek to musi to byc taki
skrypt, ktory nie generuje wynikow w postaci kodu html czy tez
wynikow pisanych z prostej przyczyny. Bo niby gdzie to mialoby byc
wyswietlone ? Mozna wyniki kierowac do plikow, bazy ... itd
Zawsze podawaj pelne sciezki do skryptu i w skryptach.
Nie wszystkie serwery pozwalaja na wykonanie skryptow php z cron.
Wzgledy bezpieczenstwa. Procz dodania wpisu do cron trzeba jeszcze
nadac prawa root dla danego skryptu i odpowiednie chmod.

Dla sprawdzenia napisz jakis prosty skrypt i umiesc go w folderze
strony. Niech to bedzie nawet zwiekszenie jakiejs komorki w bazie
o jeden. Pozniej dodaj wpis cron tak zeby Ci uruchamial co minute :
  1. * * * * * /home/httpd/html/skrypt.php

Jezli zadziala to znaczy ze dodatkowe uprawnienia nie sa wymagane.
Inaczej bedziesz musial przekonac administratora zeby w visudo dokonal
dodatkowych wpisow np tego typu :
  1. nobody ALL=NOPASSWD:/home/httpd/html/skrypt.php

Prawa root mozesz nadac np w ten sposob :
chmod +x /home/httpd/html/skrypt.php
arkos
No nie działała ;/
CyberDuck_
Ale co Ci nie dziala ?
Zaden skrytp z odpalany z cron czy tylko i wylacznie ten skrypt ?
Bo w ten sposob jak odpowiadasz i opisujesz problem to nic nie
wiadomo. Rozdzke schowalem do szuflady ... czarodziej.gif
arkos
Napisałem skrypt no i dodałem do crona aby bazę up-datował a konkretnie daną komórkę no i ręcznie działa, a w cronie nie działa.
CyberDuck_
Czyli wniosek jest prosty.
Sprawdz jeszcze uruchamiajac skrypt z shell'a wpisujac komende :
php -f /home/httpd/skrypt.php
i zobacz jaki otrzymasz wynik.
Jesli sie skrypt nie zglosi zadnego komunikatu o blednej sciezce
albo cos w tym rodzaju to pozostaja jedynie uprawnienia.
arkos
Nie mam dostępu do shella ... Mam tylko dostęp do Direct Admin
CyberDuck_
W takim razie napisz do administratora bo moim zdaniem to jest bez sensu
jesli daje dostep do dodawania wpisow do cron, ale zamyka uprawnianiami
mozliwosc wykonania skryptow z tego poziomu.

A no i wlasnie bo tutaj wczesniej wkradl sie pewien blad.
Zeby wykonac z poziomu Cron'a jakikolwiek skrypt to trzeba
podawac rozkazy w taki sam sposob jak w shell czyli np :
  1. * * * * * php -f /home/httpd/html/skrypt.php

a jeszcze lepiej jesli to bedzie z przelacznikiem q czyli :
  1. * * * * * php -q /home/httpd/html/skrypt.php
arkos
Mam płatny serwer i już cron działa poprawnie. Tylko mam problem z jednym jak zastąpić iframe funkcją curl ?
Mam taki link:
  1. echo '<iframe src=http://'.$row['ip'].':'.$row['port'].'/admin.cgi?mode=updinfo&pass='.$row['haslo'].'&song='.$tekst.'></iframe><br />';


Pozdrawiam
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.