Доброе время суток друзья Прошу вас ознакомится с данным кусочком кода. PHP: # check points per hour get max allowed points if($user->setting[cache_sessions]) { ($hook = YABPlugin::fetch_hook('file_cachedlsession',__FILE__,__LINE__)) ? eval($hook) : ''; $db->setQuery("select sum(points) as num from dlsessions where uid='$user->uid' and start_time>$download_time"); $db->query(); $points =$db->loadRow(); if($points[num]>$downloadrule[dl_maxbyday]) { $downloadrule[dl_points]=0; } unset($points); } } Здесь осуществляется проверка: если переменая $points[num] больше переменной $downloadrule[dl_maxbyday] то $downloadrule[dl_points]=0; мне надо убрать это условие и поставить свое. Суть условия в том, что должна проходить проверка Ip на уникальность. Тоесть если такой Ip адрес уже был в списке за последние 24 часа то $downloadrule[dl_points]=0; если нет заносим ip в базу данных. Предпологаю использовать MySQL. Прошу помочь так как в PHP я абсолютный ноль..
Если сделать так. Будит ли все это работать как надо? Как я понимаю надо будит очищать таблицу.. как это сделать? [sql]CREATE TABLE ip_table ( ip INT UNSIGNED NOT NULL, last_date DATETIME NOT NULL, INDEX(ip), INDEX(last_date) );[/sql] PHP: # check points per hour get max allowed points if($user->setting[cache_sessions]) { ($hook = YABPlugin::fetch_hook('file_cachedlsession',__FILE__,__LINE__)) ? eval($hook) : ''; $db->setQuery("select sum(points) as num from dlsessions where uid='$user->uid' and start_time>$download_time"); $db->query(); $points =$db->loadRow(); $result = mysql_query("SELECT COUNT(*) as cnt FROM ip_table WHERE ip=INET_ATON('".$_SERVER['REMOTE_ADDR']."') AND last_date + INTERVAL 1 DAY > NOW()"); $cnt = mysql_result($result,0,'cnt'); if($cnt > 0) { $downloadrule[dl_points]=0; }else { mysql_query("INSERT INTO ip_table(ip,last_date) VALUES(INET_ATON('".$_SERVER['REMOTE_ADDR']."'),NOW())"); } } [/sql]