CyberForum.ru - Форум программистов и сисадминов
Вернуться   Форум программистов и сисадминов CyberForum.ru > Форум web-программистов > Форум PHP

Ответ Создать новую тему
 
Старый 09.01.2012, 04:04   #1
nepster
Форумчанин
 
Аватар для nepster
 
Регистрация: 19.09.2009
Сообщений: 873
Репутация: 50 (50)
По умолчанию php скрипт + ajax

К примеру использую ajax для влияния на рейтинг новости, дело в том, что если быстро нажать несколько раз скажем на плюс, то данные полетят в php скрипт и и рейтинг защитается скажем не +1, а +2, максимум +3. Возможно из-за того, что при очень быстром клике скрипт не успевает занести данные в базу и перепроверить. Обычно при очень быстром клике, данные дублируются раза 2 максимум 3.


Код JavaScript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function rating(param, news_id) {
$(document).ready(function() {
    var base_rating = document.getElementById("rating_"+news_id).innerHTML;
        $.ajax({
            type: "POST",
            url: "/operations/rating/",
            data: ({ 'param[]': [param, news_id]}),
        beforesend: document.getElementById("rating_"+news_id).innerHTML = '<div style="margin-left:5px;margin-top:3px;position:absolute;"><img src="/style/templates/myhopes/images/loading.gif" alt="loading" /></div>',
        success: function(data) {   
 
var yes = parseInt(base_rating)+1;
var no = parseInt(base_rating)-1;
 
    if(data == 1){      
                
        if(param == 'yes') {
            document.getElementById("rating_"+news_id).innerHTML = yes;
        }
        else {
            document.getElementById("rating_"+news_id).innerHTML = no;
        }
    
    } else {
                document.getElementById("rating_"+news_id).innerHTML = base_rating;
            _uWnd.alert('<p>'+language['rating_win']+'</p>',language['rating_title'],{w:250,h:90,tm:2000});
    }   
                }
        })
    });         
}

пхп скрипт же ведет вот такую табличку и проверяет перед голосованием, если к примеру ip 93.84.50.198
с news_id 2335 существует, то голосовать уже нельзя. Но вот быстрые клики его сбивают с толку.

idipnews_iduser_id
662027 93.84.50.198 2335 0
662028 93.84.50.198 2318 0
662029 93.84.50.198 2294 0
662030 93.84.50.198 2255 0
662031 93.84.50.198 2261 0
662032 93.84.50.198 2262 0
662033 93.84.50.198 2277 0
662034 93.84.50.198 2137 0
662035 93.84.50.198 2229 0
662036 93.84.50.198 2237 0
662037 93.84.50.198 2187 0
662038 93.84.50.198 2081 0
662039 176.8.177.19 3756 0
662040 93.84.50.198 2069 0
662041 93.84.50.198 2037 0
662042 93.84.50.198 2034 0
662043 93.84.50.198 2026 0
662044 93.84.50.198 2011 0
662045 93.84.50.198 2013 0
662046 93.84.50.198 1985 0


Подскажите пожалуйста, как можно избежать повтора данных в пхп скрипте, особенно если это касается добавления материала скажем.

Последний раз редактировалось Vovan-VE; 09.01.2012 в 10:05. Причина: Тег таблицы
nepster вне форума
Другие темы раздела
Как сохранить инициализацию? PHP
Есть большая инициализация в файле init.php которая берёт при каждом выполнении скрипта пару гигабайт с базы данных и с сохранённых в файлах массивах (с помощью serialize).Она занимает каждый раз около 5 минут на достаточно мощном компьютере.То есть при каждом обращении браузера к скрипту он.... Как сохранить инициализацию?
PHP Проблема с system();
Доброго времени суток, подскажите плиз че может быть за трабл? Хочу по сабмиту сделать синхронизацию папок на внешнем и внутреннем сервере. Настроил rsync, настроил авторизацию ssh по ключу. В консоли Код: /usr/bin/rsync -crz /var/www/html/pictures/ -e "ssh -i /root/.ssh/id_dsa".... Проблема с system();
Старый 13.01.2012, 15:05  [ТС]   #11
nepster
Форумчанин
 
Аватар для nepster
 
Регистрация: 19.09.2009
Сообщений: 873
Репутация: 50 (50)
По умолчанию Re: php скрипт + ajax

что то все равно 0 дубликатов. Я уже оставил только те 2 полня, где повторения.
Миниатюры
Нажмите на изображение для увеличения
Название: 564.jpg
Просмотров: 9
Размер:	57.8 Кб
ID:	120200  
nepster вне форума
Старый 13.01.2012, 15:06  [ТС]   #12
nepster
Форумчанин
 
Аватар для nepster
 
Регистрация: 19.09.2009
Сообщений: 873
Репутация: 50 (50)
По умолчанию Re: php скрипт + ajax

было бы конечно не принцепиально обнулить базу. Если бы весь рейтинг у меня не строился на данной таблице. через запрос

Код SQL
1
SELECT COUNT(*) FROM ...
nepster вне форума
Старый 13.01.2012, 15:58   #13
KoIIIeY
Форумчанин
 
Регистрация: 08.01.2011
Сообщений: 804
Репутация: 156 (156)
По умолчанию Re: php скрипт + ajax

а как же добавить
Код SQL
1
2
SELECT COUNT(*) FROM ... WHERE ....
 
KoIIIeY вне форума
Старый 13.01.2012, 22:51  [ТС]   #14
nepster
Форумчанин
 
Аватар для nepster
 
Регистрация: 19.09.2009
Сообщений: 873
Репутация: 50 (50)
По умолчанию Re: php скрипт + ajax

с этим то все впорядке, суть в уникальных ключах. Я разобрался как их сделать, но не могу удалить повторяющиеся записи.

Есть запрос на удаления, я сутки держал комп онлайн, запрос так и не выполнился. А при копировании копируется вся база =(
nepster вне форума
Старый 15.01.2012, 01:02  [ТС]   #15
nepster
Форумчанин
 
Аватар для nepster
 
Регистрация: 19.09.2009
Сообщений: 873
Репутация: 50 (50)
По умолчанию Re: php скрипт + ajax

нашел запрос, который сработал =)

Код SQL
1
CREATE TABLE tmp SELECT * FROM `myhopes-log` WHERE 1 GROUP BY news_id,ip;
nepster вне форума
После регистрации реклама в сообщениях будет скрыта
Старый 14.02.2012, 16:43   #16
seva0812
Новичок
 
Регистрация: 19.02.2011
Сообщений: 12
Репутация: 0 (0)
По умолчанию Re: php скрипт + ajax

Ммммм..... а задержку на сам запрос в 1 секунду поставить и будет счастье тогда он сам обработчик все успеет sleep(1) где нить в верху файла пропиши
seva0812 вне форума
Ответ Создать новую тему

Похожие темы
Тема Автор
PHP для начинающих скрипт с PHP+Ajax
Сделать AJAX и серверную часть для страницы, на которой показывается, сколько человек ее просматривают Цифры должны обновляться каждые 5 сек, а также по кнопке Все без перезагрузки страницы подскажите как это реализовать?
yuras88
JavaScript Скрипт на ajax
Здравствуйте форумчане, очень большая просьба помочь, попросили написать скрипт на ajax, но им почти не владею, а задачка такая: На странице находиться несколько кнопок, у каждой свой id, нужно как то вытащить его сохранить в переменную и передать на php для дальнейшего использования. Часть с php...
Mizantrop_777
jQuery Зависает скрипт с ajax
Здравствуйте, помогите пожалуйста, написал программу отправляющую post и получающую этот же файл, вот код: <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="jquery.js"></script> <script type="text/javascript"> function post() { $.post("test.php", { action:...
Happy!
JavaScript AJAX - скрипт. Что неправильно?
Прошу прощения, если запостил не туда Имеется документ со скриптом: <html> <head> <title>Наш первый документ</title> </head> <body> <script language="JavaScript"> var req;
Xander Bass
JavaScript Скрипт в ajax
Всем привет! Хочу попросить помочь переделать данный скрипт под РЕКЛАМУ от ТАК.РУ для системы Ucoz Вот оригинал: <?if(substr($USER_BIRTHDAY$,8)=$DAY$ and substr($USER_BIRTHDAY$,strpos($USER_BIRTHDAY$,'-')+1,strpos($USER_BIRTHDAY$,'-')-2)=$MONTH$)?> <script type="text/javascript"...
vicik_SH
Опции темы

Текущее время: 04:35. Часовой пояс GMT +4.

Компьютерный форум программистов и сисадминов
Powered by vBulletin® Version 3.8.7 PL2
Copyright ©2000 - 2012, vBulletin Solutions, Inc.
Рейтинг@Mail.ru