DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   (X)HTML, JavaScript, DHTML, XML, CSS (http://www.devprotalk.com/forumdisplay.php?f=8)
-   -   Automatic Refresh Page (http://www.devprotalk.com/showthread.php?t=11034)

VujkeMod 30. 05. 2012. 21:05

Automatic Refresh Page
 
Hmmm....ovako...imam skriptu koja, nakon sto se pogleda youtube video, daje korisniku koji je gledao odredjeni broj kredita...korisnik mora da pogleda taj video najmanje 15 sekundi da bi dobio kredite...nakon 15 sekundi ispod videa se pojavljuje hiperlink(view next video) koji kada se klikne refreshuje stranicu...tu je takodje i counter koji odbrojava te sekunde...e sad ja hocu da napravim da se nakon 15 sekundi stranica sama refreshuje....to mogu naravno da uradim pomocu koda:
PHP kôd:

window.setTimeout(function () {
    
window.location.reload();
}, 
15000); 

ali onda se desava sledeci problem...brojanje sekundi mi se ne poklapa sa counterom...i on ga refreshuje pre nego sto prodje tih 15 sekundi, i onda korisnik ne dobija kredite i gleda isti video(osim ako je korisniku brzina jednaka 300000mb/s)...kako bih mogao da resim ovaj problem? ovo je deo skripte(Molim vas pomagajte):
http://pastebin.com/j7vKQS8N

Br@nkoR 30. 05. 2012. 21:50

A da osvežiš stranicu po upisu kredita korisniku.

VujkeMod 31. 05. 2012. 00:02

Hm ne...zato sto se krediti mogu dobiti i na druge nacine, putem facebook-a itd ;)

Br@nkoR 31. 05. 2012. 15:19

Ono što sam mislio je da se stranica osveži pošto se uspešno izvrši XHR post zahtev, dakle da se umesto postojeg koda (post zahteva) unutar YouTubePlayed funkcije stavi, nešto kao:
Kôd:

$.post("pages/ytreceive.php", { data: response }, function() {
  location = location;
});

Ili ja nisam lepo razumeo problem i kod.


Pogledaj i https://developers.google.com/youtub...getCurrentTime za ispitivanje da li je pogledano provih 15 sekundi videa.

VujkeMod 31. 05. 2012. 17:48

mozes li da mi kazes sta ovde da brisem a sta da ostavim da ne bi nesto zabrljao?

PHP kôd:

function YouTubePlayed(){
    var response = '<?=$site['youtube']?>';

    $.post("pages/ytreceive.php",

                {  data: response},

                function(result){

                        if(!isNaN(result)) { 

                                var curr_val = $('#points').text();

                                var new_val = parseInt(curr_val)+parseInt(result);

                                $('#points').text(new_val); 

                        }

                }

         );


Br@nkoR 31. 05. 2012. 18:04

Umesto:
PHP kôd:

    $.post("pages/ytreceive.php",

                {  
dataresponse},

                function(
result){

                        if(!
isNaN(result)) { 

                                var 
curr_val = $('#points').text();

                                var 
new_val parseInt(curr_val)+parseInt(result);

                                $(
'#points').text(new_val); 

                        }

                }

         ); 

stavi kod koji sam ja postavio.

VujkeMod 31. 05. 2012. 18:58

Hm da, sad radi, ali prebacivanjem na sledeci video ne vrsi se odbrojavanje kao ni refresh :1053:
tj. nekada se i drugi video odbrojava i normalno refreshuje i onda treci zeza...sta li je ovo? :D

Br@nkoR 31. 05. 2012. 20:25

Najbolje bi bilo da postaviš link do sajta gde ovo koristiš.
Pokušaj da debaguješ, proveri da li se poziva funkcija onYouTubePlayerReady, da li se trigeruje (poziva callback funkcija) event onStateChange, da li se pozivaju ostale funkcije, pogledaj u konzoli da li prijavljuje neku grešku...

VujkeMod 31. 05. 2012. 20:31

Evo sad sam provalio...sve normalno radi, samo zeza to sa refreshom i countom kada ide video koji se svo vreme ucitava(stalno dok traje video ide onaj krug u sredini)..samo tada pravi problem, a kada ga normalno ucitava sve radi normalno :)

Br@nkoR 31. 05. 2012. 20:59

Da, problem je u funkciji onYouTubePlayerStateChange.
https://developers.google.com/youtub...#onStateChange
Citat:

onStateChange
This event is fired whenever the player's state changes. Possible values are unstarted (-1), ended (0), playing (1), paused (2), buffering (3), video cued (5). When the SWF is first loaded it will broadcast an unstarted (-1) event. When the video is cued and ready to play it will broadcast a video cued event (5).
Pri učitavanju videa menja se stanje tako da se uništava timer i ponovo pokreće, stalno prelazi iz stanja 1 u stanje 3, pokušaj da rešiš to drugačije, možda nešto pomoću getCurrentTime kao što sam predložio u ovoj temi ili da ne uništavaš timer prilikom promene stanja.


Vreme je GMT +2. Trenutno vreme je 16:31.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.