вопрос
есть такой хак https://dle-faq.ru/faq/questhacks/1042-hak-odin-ip-odin-prosmotr.html https://dle-faq.ru/faq/questhacks/1042-hak-odin-ip-odin-prosmotr.html
но не работает на DLE 9.7
для 9.7
1. phpmyadmin
2.
меняем на
и получил такой эрор
что сделать чтоб исправить эту ошибку ? :(
но не работает на DLE 9.7
для 9.7
1. phpmyadmin
ALTER TABLE `*ПРЕФИКС*_post` ADD `ip_views` TEXT CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL;
2.
$db->query( "UPDATE " . PREFIX . "_post_extras SET news_read=news_read+1 where news_id='{$row['id']}'" );
меняем на
{
$_IP = $db->safesql( $_SERVER['REMOTE_ADDR'] );
$ips=explode(",", $row['ip_views']);
if(!in_array($_IP,$ips)){
if($row['ip_views']=="")
$ip_views=$_IP;
else
$ip_views=$row['ip_views'].",".$_IP;
$db->query( "UPDATE " . PREFIX . "_post_extras SET news_read=news_read+1, ip_views='$ip_views' where news_id='{$row['id']}'" );
}
}
и получил такой эрор
MySQL Error!
MySQL error in file: /engine/modules/show.full.php at line 118
Error Number: 1054
The Error returned was:
Unknown column 'ip_views' in 'field list'
SQL query:
UPDATE dle_post_extras SET news_read=news_read+1, ip_views='111.11.111.98' where news_id='1914'
что сделать чтоб исправить эту ошибку ? :(
ALTER TABLE `*ПРЕФИКС*_post` ADD `ip_views` TEXT CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL;
надо было сделать так
ALTER TABLE `*ПРЕФИКС*_post_extras` ADD `ip_views` TEXT CHARACTER SET cp1251 COLLATE cp1251_general_ci NOT NULL;
Вообще за этот хак надо руки оторвать, мало того что это нагрузит БД сильно, да ещё и новости отображаться будут дольше.
Вы себе представляется IP просмотров будут в одной строке. сколько она будет занимать в БД.