Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

3 Stron V   1 2 3 >  
Reply to this topicStart new topic
> Zmiana zawartośći po czasie
Diego22
post 28.09.2012, 15:30:43
Post #1





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


Witam chce zrobić coś takiego że np jak mam nowy panel w PHP Fusion a w nim obrazek np samochodu to chce aby np za 7 dni automatycznie zmienił się na kota za kolejne 7dni na psa itp ... Istnieje taka możlwość ? Proszę o pomoc
Go to the top of the page
+Quote Post
BaN
post 28.09.2012, 23:11:06
Post #2





Grupa: Zarejestrowani
Postów: 158
Pomógł: 43
Dołączył: 9.11.2007

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


Skoro wiesz gdzie dany obrazek się znajduje w systemie plików, więc wystarczy dodać dla crona zadania na konkretne daty z poleceniem podmiany obrazka. Przyda się też znajomość jaki jest format zapisu zadań dla crona, zobacz: crontab

Jeśli zaś nie masz dostępu do crona, to utwórz skrypt php, który podmieni obrazek i zleć uruchamianie tego skryptu przez jakieś darmowe rozwiązanie, google: free cron
Go to the top of the page
+Quote Post
Diego22
post 29.09.2012, 15:42:23
Post #3





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


crontab kompletnie nie czaje ;/
Go to the top of the page
+Quote Post
markonix
post 29.09.2012, 17:30:57
Post #4





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Cytat(Diego22 @ 29.09.2012, 16:42:23 ) *
crontab kompletnie nie czaje ;/

Serwer wywołuje co określony czas skrypt PHP (otwiera jakby stronę www ze skryptem).
Co tu jest "nie do czajenia"?


--------------------
Go to the top of the page
+Quote Post
Diego22
post 29.09.2012, 21:39:23
Post #5





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


hehe smile.gif Jak mam to zrobić dokładnie smile.gif Aby to działało to tamte str mi nic nie mówią smile.gif
Go to the top of the page
+Quote Post
markonix
post 30.09.2012, 10:50:15
Post #6





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


1. Zrób skrypt który podmienia ten obrazek. Możesz to zrobić na mnóstwo sposobów. Po pierwsze sprawdź czy ten obrazek wyświetlany jest za pomocą <img.. czy CSSem?

2. Ustaw cron.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 30.09.2012, 11:47:13
Post #7





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


teraz chce aby podmieniał kod paneulu też się da ?
Go to the top of the page
+Quote Post
markonix
post 30.09.2012, 12:28:35
Post #8





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Też się da.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 30.09.2012, 13:14:41
Post #9





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


ok to jak mam taką treść panelu:
Kod
openside1("Eventy");
  echo "
<div class='belka_gp'>
<div class='tytul_gp'>GRAND PRIX GP</div>
<div class='tytul_tor'>Polska</div>
</div>
<div class='szczegoly'>
<div class='kol1'>

<div id='odliczanie'>
<script>
function CD(d,o,t,x)
    {
       return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]
    }

    function R(t)
    {
        t=CD(new Date(2012,08,30,19,00,00),new Date());
        if(t[3] < 0)
          document.getElementById('odliczanie').innerHTML='W TRAKCIE';
       else
          document.getElementById('odliczanie').innerHTML=''+t[0]+'dni  '+t[1]+'h   '+t[2]+'m   '+t[3]+'s';

      

        if (t[3] >= 0 || t2[3] >= 0)
          setTimeout('R()',1e3);
    }
    onload=function()
    {
       R();
    }
</script>
</div>

<div class='opony'>
<img src='czerwone.png'>
</div>
<div class='informacje'>
<div class='dane'>TOR:</div>
<div class='dane1'>Polskai</div>
<div class='dane'>LICZBA OKR:</div>
<div class='dane1'>31</div>
<div class='dane'>DATA</div>
<div class='dane1'>58-50.09.2012</div>
</div>
</div>
<div class='kol2'><img src='malezja.png'><br>
<script>
<!--
/*
Count up from any date script-
By Website Abstraction (www.wsabstract.com)
Over 200+ free scripts here!
*/

var montharray=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')

function countup(yr,m,d){
var today=new Date()
var todayy=today.getFullYear()
var todaym=today.getMonth()
var todayd=today.getDate()
var todaystring=montharray[todaym]+' '+todayd+', '+todayy
var paststring=montharray[m-1]+' '+d+', '+yr
var difference=(Math.round((Date.parse(todaystring)-Date.parse(paststring))/(24*60*60*1000))*1)
difference+=' dni'
document.write('Istniejemy już '+difference+'!')
}
//enter the count up date using the format year/month/day
countup(2011,12,11)
//-->
</script>
</div>
</div>  

  
<div class='belka_sesje'>
<div class='sesje_tytul'>SESJE</div>

</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Trening 1</div>
<div class='data'>38.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Nick</div>
<div class='czas'>czas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Trening 2</div>
<div class='data'>49.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Nick</div>
<div class='czas'>CZas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Kwalifikacje</div>
<div class='data'>30.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Zwycięzca</div>
<div class='czas'>Czas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Wyścig</div>
<div class='data'>20.09.2012r.</div>
<div class='godzina'>??</div>
<div class='zwyciezca'>Zwycięzca</div>
<div class='czas'>Czas</div>
</div>

";
closeside1();


i aby co tydzień w niedziele o 20:00 zmieniał kod przykładowo na taki:
Kod
openside1("Eventy");
  echo "
<div class='belka_gp'>
<div class='tytul_gp'>GRAND PRIX GP</div>
<div class='tytul_tor'>Rosja</div>
</div>
<div class='szczegoly'>
<div class='kol1'>

<div id='odliczanie'>
<script>
function CD(d,o,t,x)
    {
       return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]
    }

    function R(t)
    {
        t=CD(new Date(2012,08,30,19,00,00),new Date());
        if(t[3] < 0)
          document.getElementById('odliczanie').innerHTML='W TRAKCIE';
       else
          document.getElementById('odliczanie').innerHTML=''+t[0]+'dni  '+t[1]+'h   '+t[2]+'m   '+t[3]+'s';

      

        if (t[3] >= 0 || t2[3] >= 0)
          setTimeout('R()',1e3);
    }
    onload=function()
    {
       R();
    }
</script>
</div>

<div class='opony'>
<img src='czerwone.png'>
</div>
<div class='informacje'>
<div class='dane'>TOR:</div>
<div class='dane1'>Rosja</div>
<div class='dane'>LICZBA OKR:</div>
<div class='dane1'>34</div>
<div class='dane'>DATA</div>
<div class='dane1'>18-10.09.2012</div>
</div>
</div>
<div class='kol2'><img src='chiny.png'><br>
<script>
<!--
/*
Count up from any date script-
By Website Abstraction (www.wsabstract.com)
Over 200+ free scripts here!
*/

var montharray=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')

function countup(yr,m,d){
var today=new Date()
var todayy=today.getFullYear()
var todaym=today.getMonth()
var todayd=today.getDate()
var todaystring=montharray[todaym]+' '+todayd+', '+todayy
var paststring=montharray[m-1]+' '+d+', '+yr
var difference=(Math.round((Date.parse(todaystring)-Date.parse(paststring))/(24*60*60*1000))*1)
difference+=' dni'
document.write('Istniejemy już '+difference+'!')
}
//enter the count up date using the format year/month/day
countup(2011,12,11)
//-->
</script>
</div>
</div>  

  
<div class='belka_sesje'>
<div class='sesje_tytul'>SESJE</div>

</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Trening 1</div>
<div class='data'>38.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Nick</div>
<div class='czas'>czas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Trening 2</div>
<div class='data'>49.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Nick</div>
<div class='czas'>CZas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Kwalifikacje</div>
<div class='data'>30.09.2012r.</div>
<div class='godzina'>20:00</div>
<div class='zwyciezca'>Zwycięzca</div>
<div class='czas'>Czas</div>
</div>
<div class='wyniki_danej_sesji'>
<div class='sesja'>Wyścig</div>
<div class='data'>20.09.2012r.</div>
<div class='godzina'>??</div>
<div class='zwyciezca'>Zwycięzca</div>
<div class='czas'>Czas</div>
</div>

";
closeside1();

za tydzień w niedziele o 20 znowu inny itp ..
To jak mam użyć tego crontab? Naprawdę nie wiem bo pierwszy raz się z nim stykam
Go to the top of the page
+Quote Post
markonix
post 30.09.2012, 22:11:46
Post #10





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


I po wklejasz ten kod zamiast napisać co ma się zmieniać?
W ogóle po co tu jakaś podmiana treści, po prostu jak zmieniają się jakieś wartości to zmieniaj je w bazie (ewentualnie na plikach), a nie jakieś zabawy w "podmiane" pliku HTML.

Cron to po prostu harmonogram wykonywania skryptu - ustawiasz go na serwerze więc kontaktuj się w tej sprawie z dostawcą.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 3.10.2012, 15:49:41
Post #11





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


a innego sposobu nie ma na to questionmark.gif
Go to the top of the page
+Quote Post
franki01
post 3.10.2012, 20:50:25
Post #12





Grupa: Zarejestrowani
Postów: 508
Pomógł: 75
Dołączył: 2.11.2005
Skąd: Bydgoszcz

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


W crontabie robisz nowe zadanie. Minuty 0, godzina 0, dzień tygodnia 0, reszta gwiazdki. Treść zadania może wyglądać tak w uproszczonym przypadku:
Kod
wget -O /dev/null http://domena.pl/linkdoskryptu.php &> /dev/null


Link podmieniasz. W docelowym pliku ma znaleźć się skrypt, który będzie zmieniał zdjęcie. Piszesz ten skrypt normalnie jak dla zwykłego użytkownika. Będzie to wykonywane o godzinie 00:00 w poniedziałek (dzień 0 = poniedziałek).
Go to the top of the page
+Quote Post
Diego22
post 4.10.2012, 09:30:22
Post #13





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


czyli jak będe chciał co tydzień inną zawartość to muszę co tydzień zmieniać link do tego skryptu?
Go to the top of the page
+Quote Post
markonix
post 4.10.2012, 13:28:59
Post #14





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Cytat(Diego22 @ 4.10.2012, 10:30:22 ) *
czyli jak będe chciał co tydzień inną zawartość to muszę co tydzień zmieniać link do tego skryptu?

Człowieku! Kto by Ci proponował ustawianie CRONA'a po to abyś musiał zmieniać jego konfiguracje co tydzień?
Jaki byłaby przewaga CRON'a nad ręcznym podmienianiem jakiejś tam treści?

thumbsdownsmileyanim.gif

Zanim w ogóle zadajesz pytanie na forum to zastanów się czy Ty w ogóle masz jakieś blade pojęcie o PHP i webmasterce bo po Twoim toku myślenia widać, że ciężko z tym. Po prostu jak się na tym nie znasz zleć to komuś.

W ogóle zadałem Ci pytanie żeby Ci dalej pomóc to nawet chyba nie umiesz przeczytać do końca moich postów...


--------------------
Go to the top of the page
+Quote Post
Diego22
post 4.10.2012, 16:12:49
Post #15





Grupa: Zarejestrowani
Postów: 64
Pomógł: 0
Dołączył: 23.03.2011

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


Chcę się tego nauczyć, z tego co wiem to forum jest dla wszystkich. Dopiero zaczynam z tym cronem wcześniej się z tym nie spotkałem, jak byś pokazał chociaż jeden konkretny przykład to dalej bym próbował sam. A nie że mam pisać jakieś skrypkty skoro tego nie umiem. PS Jakie pytanie questionmark.gif Nic nie widzę
Go to the top of the page
+Quote Post
darko
post 4.10.2012, 16:29:48
Post #16





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Po co tu cron? Przecież to się da w javascript zrobić:
[JAVASCRIPT] pobierz, plaintext
  1. Date.prototype.getWeek = function() {
  2. var onejan = new Date(this.getFullYear(),0,1);
  3. return Math.ceil((((this - onejan) / 86400000) + onejan.getDay()+1)/7);
  4. }
  5. // zakładając, że posiadasz 52 ponumerowane kolejno obrazki (1.png etc.):
  6. var woy = new Date().getWeek();
  7. // document.write('<img src="' + woy + '.png" />');
  8. // czy tam:
  9. $('element').html('<img src="' + woy + '.png" />');
[JAVASCRIPT] pobierz, plaintext

click
click

Ten post edytował darko 4.10.2012, 16:30:59


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
markonix
post 4.10.2012, 18:12:19
Post #17





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Cytat(Diego22 @ 4.10.2012, 17:12:49 ) *
Chcę się tego nauczyć, z tego co wiem to forum jest dla wszystkich. Dopiero zaczynam z tym cronem wcześniej się z tym nie spotkałem, jak byś pokazał chociaż jeden konkretny przykład to dalej bym próbował sam. A nie że mam pisać jakieś skrypkty skoro tego nie umiem. PS Jakie pytanie questionmark.gif Nic nie widzę

To jest forum dla osób, które znają PHP i mają z nim problem, albo się chociaż uczą i stanęli w jakimś miejscu, a Ty na razie nawet kawałka kodu nie pokazałeś..

Skonkretyzuj w ogóle co chcesz osiągnąć bo zmieniasz temat i tworzysz zamieszanie tylko.

Cytat(darko @ 4.10.2012, 17:29:48 ) *
Po co tu cron? Przecież to się da w javascript zrobić:

Po co tu JS? Przecież to się da w PHP zrobić...


--------------------
Go to the top of the page
+Quote Post
darko
post 4.10.2012, 18:40:56
Post #18





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(markonix @ 4.10.2012, 19:12:19 ) *
Po co tu JS? Przecież to się da w PHP zrobić...

Jak już tak sobie odbijamy piłeczkę, to po kiego obciążać serwer dodatkowymi obliczeniami i zaprzęgać php, jeżeli można to wykonać po stronie klienta kosztem mocy obliczeniowej jego komputera?


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post
markonix
post 4.10.2012, 19:52:28
Post #19





Grupa: Zarejestrowani
Postów: 2 707
Pomógł: 290
Dołączył: 16.12.2008
Skąd: Śląsk

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


Wow.. Ale obciążę serwer jedną funkcją date i echo... Normalnie dedyk przy tym to minimum... sciana.gif

Szkoda tylko, że każdy wie, że JS to zawsze powinna być druga opcja po PHP bo np. nie zobaczę nowego obrazka bo mam włączony NoScript, gorzej to wpływa na indeksacje i wiele mało znaczących ale jednak szczegółów.

Druga sprawa jakbyś nie zauważył to autor tematu na razie sam nie wie czego tak naprawdę chce i nie chodzi tu o podmianę obrazów tylko innych elementów i pewnie się okaże to bardziej skomplikowane np. oparte o pliki czy bazę.


--------------------
Go to the top of the page
+Quote Post
darko
post 5.10.2012, 00:36:01
Post #20





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Cytat(markonix @ 4.10.2012, 20:52:28 ) *
Wow.. Ale obciążę serwer jedną funkcją date i echo... Normalnie dedyk przy tym to minimum... sciana.gif

Szkoda tylko, że każdy wie, że JS to zawsze powinna być druga opcja po PHP bo np. nie zobaczę nowego obrazka bo mam włączony NoScript, gorzej to wpływa na indeksacje i wiele mało znaczących ale jednak szczegółów.

Druga sprawa jakbyś nie zauważył to autor tematu na razie sam nie wie czego tak naprawdę chce i nie chodzi tu o podmianę obrazów tylko innych elementów i pewnie się okaże to bardziej skomplikowane np. oparte o pliki czy bazę.

1. Zbierz takich kilkadziesiąt pierdółek i za każdym razem lub cyklicznie zarzynaj interpreter. Szkoda zasobów na coś, co w zupełności można przerzucić na stronę klienta.
2. Takich miejsc się zazwyczaj nie indeksuje z natury rzeczy.
3. Na razie wynika, że w ogóle nie kojarzy crona, nie wyciągaj pochopnych wniosków.
@topic:
cron to odpowiednik harmonogramu zadań w systemach windows. Jak wiadomo do takiego harmonogramu można wrzucać zadania do wykonania w określonym czasie i z daną częstotliwością. W tym przypadku do crona wrzucasz skrypt, któremu odpowiednim, cronowym formatem określasz, co ile ma uruchomić interpreter php z podaną nazwą (i ścieżką) skryptu php*) do wykonania. Proste jak diabli aaevil.gif i bardzo wygodne rozwiązanie.

*) który to skrypt wykona brudną robotę podmiany ścieżek do treści i wygeneruje statyczny html.
// edit
lektura - crontab

Ten post edytował darko 5.10.2012, 00:38:43


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post

3 Stron V   1 2 3 >
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 Wersja Lo-Fi Aktualny czas: 22.06.2025 - 10:47