Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript] Edycja funkcji głosowania
the-sopel
post
Post #1





Grupa: Zarejestrowani
Postów: 23
Pomógł: 0
Dołączył: 8.01.2006

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


Witam, korzystam z gotowego modułu (Vote It Up) pozwalającego na głosowanie użytkownikom odwiedzającym bloga.
Głosowanie odbywa się za pomocą kliknięcia plusa lub minusa, jeżeli jest się zalogowanym wszystko jest w porządku - gorzej jest wtedy gdy głosują goście.
Problem polega na tym, że będąc nie zalogowanym i klikając szybko kilka lub nawet kilkanaście razy na plus/minus system zapisuję wszystkie kliknięcia dając możliwość manipulowania głosami.

Funkcja realizująca głosowanie wygląda następująco:
Kod
function vote(obj, votelinkobj, aftervote, postID ,userID, baseURL) {
    currentobj = obj;
    voteobj = votelinkobj;
    aftervotetext = aftervote;
    var scripturl = baseURL+"/voteinterface.php?type=vote&tid=total&uid="+userID+"&pid="+postID+"&auth="+Math.random();
    lg_AJAXrequest(scripturl);
}

Znalazłem rozwiązanie polegające na zmianie funkcji na:
Kod
var clicked = false;
function vote(obj, votelinkobj, aftervote, postID ,userID, baseURL) {
    if (clicked == false) {
        currentobj = obj;
        voteobj = votelinkobj;
        aftervotetext = aftervote;
        var scripturl = baseURL+"/voteinterface.php?type=vote&tid=total&uid="+userID+"&pid="+postID+"&auth="+Math.random();
        lg_AJAXrequest(scripturl);
    }
    clicked = true;
}

Jednak teraz, gdy gość zagłosuję na jakiś post musi odświeżyć stronę by móc zagłosować na inny.
Myślę, że najlepiej byłoby gdyby funkcją odliczała czas po kliknięciu na plus/minus i powiedzmy po kilku sekundach (gdy głos zapiszę się już w bazie) pozwalała na kolejne kliknięcie,
czy mógłby ktoś pomóc mi w napisaniu czegoś takiego?

Ten post edytował the-sopel 22.09.2011, 14:16:09
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.12.2025 - 18:05