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 6.10.2012, 10:24:57
Post #21





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

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


Dobra nic nie czaje z crona biggrin.gif Może ktoś by mógł to wykonać w zamian za coś ?
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 14:04:37
Post #22





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

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


Po co Ci ten CRON.

Weź się człowieku skup i napisz konkretnie co chcesz zmieniać i w jakim celu albo idź do działu giełdy czy na strony ze zleceniami.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 6.10.2012, 16:13:29
Post #23





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

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


ok to chce aby co tydzień o 20:00 w niedziele zmieniały się automatycznie treści:
-GRAND PRIX GP np za tydzień było GRAND PRIX Malezji
-Rosja
-34
-18-10.09.2012
itp...
Wiecie o co chodzi ? np zamiast 34 było 31 itp.
Chcę aby to było pobierane gdzieś z jakiegoś pliku z ftp, abym napisał kolejność jakie mają się podmieniać w danej linijce , tak aby napisał w pliku na 20 tygodni i się samo to zmieniało.
Nizej kod panelu
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();
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 17:58:52
Post #24





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

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


Wrzucaj kod w ODPOWIEDNIE znaczniki na forum.

Problem nie wymaga żadnych CRONów, ani też plików tekstowych.
Wszystko to można zrobić prostym skryptem opartym o tablice.
Jeden element tablicy to zestaw odpowiednich danych (kraj, tor itp).

Pozostaje kwesta kiedy ma się to zmieniać? Po prostu co tydzień czy tutaj jest jakiś głębszy sens.
Funkcja date może zwrócić numer tygodnia więc najprościej zrobić tablicę gdzie indeksem będzie liczba od 1 do 42.

Można też to robić elastyczniej - np. o czas unix bądź w ostateczności o bazę danych.



--------------------
Go to the top of the page
+Quote Post
Diego22
post 6.10.2012, 18:29:05
Post #25





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

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


Tak co tydzień w niedzielę o 20 ma być dany element.
Mógłbyś podać przykład dla jednego elementu , jak by to miało wyglądać ?
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 18:50:00
Post #26





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

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


  1. $data[1] = array('kraj' => 'Polska', 'inny_atrybut' => [...]
  2. $data[2] = array('kraj' => 'Inny kraj', 'inny_atrybut' => [...]


Wyświetlanie atrybutów.

  1. echo $data[date('W')]['kraj']


Ale ten sposób tak jak mówiłem jest sztywny, no i nie o 20:00 w niedzielę zadziała tylko o północy.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 6.10.2012, 19:20:58
Post #27





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

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


Tylko własnie zależy mi na tym aby to się aktualizowało o 20 :00 czy będzie w miarę łatwy sposób aby to spełniało ten wymóg smile.gif
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 19:31:03
Post #28





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

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


Za pomocą tej tablicy i ten pomysł z unix to.

1. $startUnix = tutaj czas unix pierwszej niedzieli 20:00:00.
2. 604800 to liczba sekund w tygodniu.
3. (Aktualny czas unix - $startUnix) / 604800 da Ci liczbę tygodni które minęły od $startUnix czyli najpierw powinno zwrócić 0, potem 1, potem 2. Oczywiście trzeba zaokrąglać dzielenie, w dół czy górę - małe znaczenie.

Sposób ten nadal dość sztywny ale powinien działać. Indeksy tablicy takie jak wcześniej tylko od zera i zamiast date('W') to zmienna z wynikiem z pkt 3.


--------------------
Go to the top of the page
+Quote Post
binprogrammer
post 6.10.2012, 20:32:54
Post #29





Grupa: Zarejestrowani
Postów: 249
Pomógł: 8
Dołączył: 10.08.2011
Skąd: Bełchatów

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


1. Tworzysz skrypt który podmienia ci ten (plik, obrazek, tekst ... albo co tam chcesz)
2. Wykupujesz CRONA (albo znajdujesz darmowego na jakims hostingu)
3. Ustawiasz crona tygodniowego o 20:00 i podajesz adres do skryptu
4. Działa ! smile.gif

Drugi sposób to użycie date(), ale musisz mieć dużą oglądalność strony i nie będzie to tak dokładne zawsze, bo np. jeżeli ktoś wejdzie o 20:50 to się wtedy dopiero zaktualizuje, eh... coś chyba źle napisałem biggrin.gif
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 20:40:37
Post #30





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

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


Cytat(binprogrammer @ 6.10.2012, 21:32:54 ) *
Drugi sposób to użycie date(), ale musisz mieć dużą oglądalność strony i nie będzie to tak dokładne zawsze, bo np. jeżeli ktoś wejdzie o 20:50 to się wtedy dopiero zaktualizuje, eh... coś chyba źle napisałem biggrin.gif

Skoro zrobi to przed wyświetleniem to nie ma to wpływu czy zrobię się to o 20:00 czy 20:30.
Takich metod nie stosuje się gdy wykonują one jakieś bardziej skomplikowane działania niekoniecznie związane z wyświetlaniem sztywnych danych tylko np. aktualizacje tabel.


--------------------
Go to the top of the page
+Quote Post
Diego22
post 6.10.2012, 20:49:52
Post #31





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

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


Zrobiłem to tak:
  1. openside1("EVENT"); ?>
  2. $data[0] = array('kraj2' => 'Polska', 'inny_atrybut' =>
  3. $data[1] = array('kraj' => 'Inny kraj', 'inny_atrybut' =>
  4. $startUnix = 604800
  5. echo $data[0][date('$startUnix')]['kraj2']
  6.  
  7. <div class='belka_gp'>
  8. <div class='tytul_gp'>GRAND PRIX GP</div>
  9. <div class='tytul_tor'>Rosja</div>
  10. </div>
  11. <div class='szczegoly'>
  12. <div class='kol1'>
  13.  
  14. <div id='odliczanie'>
  15. <script>
  16. function CD(d,o,t,x)
  17. {
  18. return[x=~~(t=(d-o)/864e5),x=~~(t=(t-x)*24), x=~~(t=(t-x)*60),~~((t-x)*60)]
  19. }
  20.  
  21. function R(t)
  22. {
  23. t=CD(new Date(2012,08,30,19,00,00),new Date());
  24. if(t[3] < 0)
  25. document.getElementById('odliczanie').innerHTML='W TRAKCIE';
  26. else
  27. document.getElementById('odliczanie').innerHTML=''+t[0]+'dni '+t[1]+'h '+t[2]+'m '+t[3]+'s';
  28.  
  29.  
  30.  
  31. if (t[3] >= 0 || t2[3] >= 0)
  32. setTimeout('R()',1e3);
  33. }
  34. onload=function()
  35. {
  36. R();
  37. }
  38. </script>
  39. </div>
  40.  
  41. <div class='opony'>
  42. <img src='czerwone.png'>
  43. </div>
  44. <div class='informacje'>
  45. <div class='dane'>TOR:</div>
  46. <div class='dane1'>Rosja</div>
  47. <div class='dane'>LICZBA OKR:</div>
  48. <div class='dane1'>34</div>
  49. <div class='dane'>DATA</div>
  50. <div class='dane1'>18-10.09.2012</div>
  51. </div>
  52. </div>
  53. <div class='kol2'><img src='chiny.png'><br>
  54. <script>
  55. <!--
  56. /*
  57. Count up from any date script-
  58. By Website Abstraction (www.wsabstract.com)
  59. Over 200+ free scripts here!
  60. */
  61.  
  62. var montharray=new Array('Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec')
  63.  
  64. function countup(yr,m,d){
  65. var today=new Date()
  66. var todayy=today.getFullYear()
  67. var todaym=today.getMonth()
  68. var todayd=today.getDate()
  69. var todaystring=montharray[todaym]+' '+todayd+', '+todayy
  70. var paststring=montharray[m-1]+' '+d+', '+yr
  71. var difference=(Math.round((Date.parse(todaystring)-Date.parse(paststring))/(24*60*60*1000))*1)
  72. difference+=' dni'
  73. document.write('Istniejemy już '+difference+'!')
  74. }
  75. //enter the count up date using the format year/month/day
  76. countup(2011,12,11)
  77. //-->
  78. </script>
  79. </div>
  80. </div>
  81.  
  82.  
  83. <div class='belka_sesje'>
  84. <div class='sesje_tytul'>SESJE</div>
  85.  
  86. </div>
  87. <div class='wyniki_danej_sesji'>
  88. <div class='sesja'>Trening 1</div>
  89. <div class='data'>38.09.2012r.</div>
  90. <div class='godzina'>20:00</div>
  91. <div class='zwyciezca'>Nick</div>
  92. <div class='czas'>czas</div>
  93. </div>
  94. <div class='wyniki_danej_sesji'>
  95. <div class='sesja'>Trening 2</div>
  96. <div class='data'>49.09.2012r.</div>
  97. <div class='godzina'>20:00</div>
  98. <div class='zwyciezca'>Nick</div>
  99. <div class='czas'>CZas</div>
  100. </div>
  101. <div class='wyniki_danej_sesji'>
  102. <div class='sesja'>Kwalifikacje</div>
  103. <div class='data'>30.09.2012r.</div>
  104. <div class='godzina'>20:00</div>
  105. <div class='zwyciezca'>Zwycięzca</div>
  106. <div class='czas'>Czas</div>
  107. </div>
  108. <div class='wyniki_danej_sesji'>
  109. <div class='sesja'>Wyścig</div>
  110. <div class='data'>20.09.2012r.</div>
  111. <div class='godzina'>??</div>
  112. <div class='zwyciezca'>Zwycięzca</div>
  113. <div class='czas'>Czas</div>
  114. </div>
  115.  
  116. ";
  117. <?php closeside1();

Tylko coś nie działa nie czyta nawet styli css
Go to the top of the page
+Quote Post
markonix
post 6.10.2012, 23:57:38
Post #32





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

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


Nic nie zrobiłeś tylko skopiowałeś bezmyślnie fragmenty kodu.
Nie znasz nawet podstaw PHP - składni więc ja nie mam zamiaru tracić więcej czasu.
Albo się uczysz PHP albo po prostu zleć to komuś..


--------------------
Go to the top of the page
+Quote Post
Diego22
post 7.10.2012, 12:33:41
Post #33





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

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


nie patrz na treść typu te inne atrybuty. Tylko na system działania bo coś mi to nie działa
Go to the top of the page
+Quote Post
markonix
post 8.10.2012, 20:14:44
Post #34





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

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


Co nie działa?


--------------------
Go to the top of the page
+Quote Post
Diego22
post 9.10.2012, 19:13:56
Post #35





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

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


Panel wygląda tak na podglądzie:
  1. $data[0] = array('kraj2' => 'Polska', 'inny_atrybut' => $data[1] = array('kraj' => 'Inny kraj', 'inny_atrybut' => $startUnix = 604800 echo $data[0][date('$startUnix')]['kraj2']
  2. GRAND PRIX GP
  3. Rosja
  4. W TRAKCIE
  5. TOR:
  6. Rosja
  7. LICZBA OKR:
  8. 34
  9. DATA
  10. 18-10.09.2012
  11.  
  12. Istniejemy już 303 dni!
  13. SESJE
  14. Trening 1
  15. 38.09.2012r.
  16. 20:00
  17. Nick
  18. czas
  19. Trening 2
  20. 49.09.2012r.
  21. 20:00
  22. Nick
  23. CZas
  24. Kwalifikacje
  25. 30.09.2012r.
  26. 20:00
  27. Zwycięzca
  28. Czas
  29. Wyścig
  30. 20.09.2012r.
  31. questionmark.gif
  32. Zwycięzca
  33. Czas
  34. ";

Coś musi być nie tak z kodem który podałem wyżej
Go to the top of the page
+Quote Post
markonix
post 9.10.2012, 20:20:52
Post #36





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

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


Powyższy kod nie ma nic wspólnego z PHP.
Wróć tu gdy chociaż będziesz na poziomie "Hello World"


--------------------
Go to the top of the page
+Quote Post
Diego22
post 10.10.2012, 16:50:49
Post #37





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

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


Czytanie ze zrozumieniem: "Panel wygląda tak na podglądzie:" To jest na PODGLĄDZIE, kod wstawiłem wcześniej. Sorki za te litery smile.gif
Go to the top of the page
+Quote Post
markonix
post 10.10.2012, 18:32:01
Post #38





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

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


I co w związku z tym?


--------------------
Go to the top of the page
+Quote Post
Diego22
post 11.10.2012, 09:29:42
Post #39





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

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


To że w kodzie który podałem 8 postów wyżej jest błąd pewnie, tylko ja nie wiem co nie jak tak tam jest i liczę na pomoc smile.gif Bo gsyby był ok to powinno działać wszystko
Go to the top of the page
+Quote Post
darko
post 11.10.2012, 09:49:48
Post #40





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

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


~Diego22 wykaż przynajmniej odrobinę chęci do samodzielnego rozwiązania problemu.
~topic: we fragmencie kodu, na który się powołujesz na pierwszy rzut oka widać, że za wcześnie w wyskakujesz z php:

?>
$data[0] = array('kraj2' => 'Polska', 'inny_atrybut' => ...


--------------------
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: 23.06.2025 - 14:34