Αντίστροφη μέτρηση δημοπρασίας

Κώδικας, πληροφορίες, ερωτήσεις και απαντήσεις σχετικές με την JavaScript.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από Khronos » 23 Νοέμ 2009 14:34

Μήπως ξέρετε με ποιον τρόπο λειτουργεί η αντίστροφη μέτρηση σε sites όπως αυτό: https://www.bidhere.com/

Κάθε δευτερόλεπτο γίνεται κ ένα query στη βάση έτσι ώστε να βλέπουν όλοι τον ίδιο χρόνο που απομένει?

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από fafos » 23 Νοέμ 2009 18:14

me ajax.. alla einai thanatos gia ton server...
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από Khronos » 23 Νοέμ 2009 18:39

Υπάρχει κάποιο παράδειγμα που να έχει παρόμοια λειτουργία? Ψάχνω αλλά δεν βρίσκω τίποτα!

MasterX
Δημοσιεύσεις: 92
Εγγραφή: 13 Οκτ 2009 13:29
Επικοινωνία:

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από MasterX » 24 Νοέμ 2009 11:22

Λογικά σε κάθε δευτ. το Ajax επικοινωνεί με τη βάση και ελέγχει αν έχει γίνει κάποιο bit. Αν ναι, ενημερώνει την τιμή, αν όχι στο τέλος του χρόνου αλλάζει την τιμή.

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από Khronos » 24 Νοέμ 2009 20:26

Ναι αλλά δεν θα πρέπει να ενημερώνει την τιμή του countdown κάθε δευτερόλεπτο έτσι ώστε αν κάποιος άλλος χρήστης δει τη σελίδα, να βλέπει το ίδιο countdown?

Λίγο υπερβολικό μου φαίνεται να γίνονται queries κάθε δευτερόλεπτο κ μάλιστα απο άγνωστο αριθμό χρηστών.

Κ επίσης πώς γίνεται να ξεκινάει η αντίστροφη μέτρηση σε συγκεκριμμένη χρονική στιγμή αυτόματα?

MasterX
Δημοσιεύσεις: 92
Εγγραφή: 13 Οκτ 2009 13:29
Επικοινωνία:

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από MasterX » 25 Νοέμ 2009 10:43

Khronos έγραψε:Ναι αλλά δεν θα πρέπει να ενημερώνει την τιμή του countdown κάθε δευτερόλεπτο έτσι ώστε αν κάποιος άλλος χρήστης δει τη σελίδα, να βλέπει το ίδιο countdown?

Λίγο υπερβολικό μου φαίνεται να γίνονται queries κάθε δευτερόλεπτο κ μάλιστα απο άγνωστο αριθμό χρηστών.

Κ επίσης πώς γίνεται να ξεκινάει η αντίστροφη μέτρηση σε συγκεκριμμένη χρονική στιγμή αυτόματα?
Μια σκέψη....

Γράψε στη βάση τη χρονική στιγμή που ξεκινάει η αντίστροφη μέτρηση. Στη σύνεχεια με Ajax βρες την ώρα και συγκρινέ την με την ώρα που έγραψες στη βάση. Μόλις περάσουν τα 16δευτ, επανέλαβε το βήμα. Με αυτό τον τρόπο όλοι οι χρήστες θα βλέπουν τον ίδιο υπολειπόμενο χρόνο.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6231
Εγγραφή: 30 Νοέμ 2004 03:09

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από fafos » 25 Νοέμ 2009 14:17

Den katalavaino ti grafete alla to systhma douleuei os ekshs.. exeis to A proion se mia vash dedomenon me diafora stoixeia kai 2 eksauton einai h hmeromhnia enarkshs kai h hmeromhnia lhkshs ths dhmoprasias..

auta ta 2 pedia ta exoume se timestamp kai stis selida mas kaloume thn diafora tous me to tora TOY SERVER..

paradeigma:

to X proion ksekina shmera stis 3:00 to apogeuma kai teleionei stis 3:15 (dhladh krata 15 lepta)

exoume tis timestamps: enarksh = 1259168400 kai lhksh= 1259169300..

as ypothesoume oti mphke o episkepths stis 3:06 to timestamp tha einai 1259168760 ara h diafora me thn lhksh einai 540 deytera h 9 lepta, to epomeno deuterolepto tha einai 539 deutera h 8 lepta kai 59 deutera klp klp

auto pou kanei to ajax einai na kalei ena eksoteriko arxeio me mia query ekei mesa h opoia kalei thn hmeromhnia lhkshs kai enarkshs kanei elenxo an exei arxisei h an exei teleiosei h dhmoprasia kai meta kanei thn afairesh tou xronou diaforas me ton xrono tou tora.. authn thn routina thn epanalamvanei kathe ena deutero me apotelesma (an einai polloi oi antistrofoi metrhtes) na thn kanete thn vash koupepe apo ta polla queries..

Gia na mhn kourazoume thn vash me ola auta ta kalesmata mporoume na dhmiourghsoume ena xml arxeio opou ana takta diasthmata tha katagrafoume ta dedomena xronou ths vashs (me kapoio cron job) kai tha kaloume thn routina apo to xml.. mhn me rothsete na sas grapso pos ginetai giati variemai.. :lol: diavaste gia xml kai parse xml..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Άβαταρ μέλους
Alice_Cooper
Δημοσιεύσεις: 1947
Εγγραφή: 11 Μάιος 2007 00:33
Τοποθεσία: Ioannina
Επικοινωνία:

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από Alice_Cooper » 25 Νοέμ 2009 14:52

xmmm kai giati na mhn to kaneis na enimeronete ana 30 sec px ...
ektos tou telefteou 5 leptou as poume pou tha enimeronete ana 10 sec gia ta bit
kai ta teleftea 30 an sec (ki ekei elpizeis na min exeis poly kosmo) :p

Άβαταρ μέλους
greekbytes
WebDev Moderator
Δημοσιεύσεις: 2438
Εγγραφή: 15 Νοέμ 2002 15:42
Τοποθεσία: Αθήνα
Επικοινωνία:

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από greekbytes » 25 Νοέμ 2009 16:06

Δες και το Jquery plugin: Countdown.

Έχει ένα option serverSync που σου επιτρέπει να συγχρονίσεις το countdown με την ώρα του server πριν αυτό ξεκινήσει.
Synchronise the client's time with that of the server by providing a function that returns the current server date and time. This date and time should take into account the server's timezone and any difference between that time and the client's is applied to the countdown when it is started or changed.
Παράδειγμα που δίνει:
The following example uses a PHP program on the server to return the current server time in a format that can be used directly by the JavaScript callback. You should make sure that your server call is synchronous.

Κώδικας: Επιλογή όλων

$(selector).countdown({ 
    until:liftoffTime, serverSync: serverTime}); 
 
function serverTime() { 
    var time = null; 
    $.ajax({url: 'http://myserver.com/serverTime.php', 
        async: false, dataType: 'text', 
        success: function(text) { 
            time = new Date(text); 
        }, error: function(http, message, exc) { 
            time = new Date(); 
    }}); 
    return time; 
}

Κώδικας: Επιλογή όλων

<?php 
$now = new DateTime&#40;&#41;; 
echo $now->format&#40;"M j, Y H&#58;i&#58;s O"&#41;."\n"; 
?>

Άβαταρ μέλους
Khronos
Δημοσιεύσεις: 754
Εγγραφή: 11 Δεκ 2006 14:43
Τοποθεσία: Ηράκλειο

Αντίστροφη μέτρηση δημοπρασίας

Δημοσίευση από Khronos » 25 Νοέμ 2009 16:44

Ευχαριστώ για τις απαντήσεις σας παιδιά. Θα τα κοιτάξω πιο προσεκτικά και θα σας πω αν έβγαλα άκρη!

Απάντηση

Επιστροφή στο “JavaScript και Frameworks”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες