Помощь в скрипте

Тема в разделе "JavaScript", создана пользователем minimalism, 17 май 2012.

Модераторы: ZiX
  1. minimalism

    minimalism Создатель

    Регистр.:
    6 июл 2011
    Сообщения:
    31
    Симпатии:
    1
    Доброго времени суток!
    Есть скрипт конкурса в котором могут учавствовать только зарегестрированные пользователи а голосовать за участников могут все включая гостей.Но всвязи с нокручиванием надо поправить что бы голосовать могли только зарегестрировавшиеся пользователи.
    Вот этот скрипт проверки каторый сейчас
    HTML:
    <script>
    function votetouser(userto_id) {
     
    $.post('/netcat/require/lib/voting.php', {user_id: $AUTH_USER_ID, product_id: $f_RowID, userto_id: userto_id, task: 'vote'}, function(data){
    if (data.vote) {
    $('div#voting').html(data.userlist);
    NewWindow(' $f_ssilgolos ', 'newwindow');
    alert('Спасибо, Ваш голос учтен!');
    }
    else {
    NewWindow(' $f_ssilgolos ', 'newwindow');
    alert('Вы уже голосовали сегодня!');
     
    }
    }, 'json');
    }
     
    $(document).ready(function() {
    $('div.votebutton').click(function() {
     
    $.post('/netcat/require/lib/voting.php', {user_id: $AUTH_USER_ID, product_id: $f_RowID, task: 'show'}, function(data) {
    if (data.guest) {
    window.location.href = '/profile/registration/';
    }
    else {
    $('div#voting').html(data.userlist);
    }
    }, 'json');
     
    });
    });
    </script>
    Файлы скрипта прикрепляю.
    Помогите пожалуйста сделать что бы голосовать могли только пользователи,а если гость то переводит на страницу регестраций так как это сделано сейчас при нажатий учавствовать.
    Спасибо!
     

    Вложения:

    • voting.rar
      Размер файла:
      1,9 КБ
      Просмотров:
      6
  2. MaxiSoft

    MaxiSoft Постоялец

    Регистр.:
    5 апр 2007
    Сообщения:
    132
    Симпатии:
    82
    Код:
        // vote to user
        function voteToUser($user_id = 0, $product_id, $userto_id, $ip)
        {
            // check if vote today or not
            // query for user
            if ($user_id) {
                $query = "SELECT * FROM votes WHERE user_id = $user_id AND product_id = $product_id AND date > NOW() - INTERVAL 1 day";
                $ip = '';
            }
            // query for guest
            else {
                $query = "SELECT * FROM votes WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "' AND product_id = $product_id AND date > NOW() - INTERVAL 1 day";
                $user_id = 0;
                $ip = $_SERVER['REMOTE_ADDR'];
            }
    вот тут нужно сделать так ...
    Код:
        // vote to user
        function voteToUser($user_id = 0, $product_id, $userto_id, $ip)
        {
            // check if vote today or not
            // query for user
            if ($user_id) {
                $query = "SELECT * FROM votes WHERE user_id = $user_id AND product_id = $product_id AND date > NOW() - INTERVAL 1 day";
                $ip = '';
            }
            // query for guest
            else {
         тут редирект на регистрацию (.. не знаю что за система поэтому не могу сказать как правильно редиректить..)
            }
     
  3. minimalism

    minimalism Создатель

    Регистр.:
    6 июл 2011
    Сообщения:
    31
    Симпатии:
    1
    Сделал так: else {
    header( 'Location: /profile/registration/' );

    }
    После чег овообще ничего не происходит.Жмёш на кнопку и ноль действий...
    Может что-то не так сделал?
     
  4. HatoL

    HatoL

    Регистр.:
    5 фев 2008
    Сообщения:
    206
    Симпатии:
    36
    В каком файле эти строки написали? В котором ajax-запрос обрабатывается?
     
  5. a_n_d_y

    a_n_d_y

    Регистр.:
    26 мар 2006
    Сообщения:
    465
    Симпатии:
    61
    Я же тебе писал какие аргументы у функции NewWindow, там их не два а больше, естественно вызов в таком виде будет выдавать ошибку. Вообще научись Firebug пользоваться.
     
    minimalism нравится это.