Samail

Samail
Рейтинг
369
Регистрация
10.05.2007
dwell:
Нужно в массиве

Массив лучше как массив и обрабатывать, меньше ошибок вылезет.

PHP:

$arr = array('слово', 'slovo', 'slovo154 2', 'слово 1542', 'слово Z'); 


$arr = preg_grep('/^[^a-z]+$/i', $arr);
print_r($arr);

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

timo-71:
Тоже более-менее верно определяет https://extreme-ip-lookup.com/json. И вот этот http://ip-api.com/json

Первый правильно, второй меня только через прокси пускает и определяет неправильно (по моему IP).

km_:
Файл импорта xml (utf-8) от поставщика, т.е. его менять не могу

Кто запрещает? Скачал, изменил, импортировал.

keepersheet:
Из трех баз, с к которым подключена карта, вашу геолокацию правильно определяет только Maxmind?

Да.

keepersheet:
насколько велика ошибка для IPGeolocation?

Вот на столько: https://prnt.sc/oqlbun

Раньше этот пул адресов был у Владивостока, но в 2013 передали Хабаровску, однако до сих пор почти везде определяется как Владивосток, а кое-где как Казань к ней тоже этот пул IP относился ещё раньше.

keepersheet:
Географические широта и долгота вашей местности тоже неправильно определяются IPGelocation?

Конечно, координаты же берутся того города который определился, а он в другом регионе вообще.

keepersheet:
Кстати, не подскажете ли, какие сервисы геолокации адекватно определяют ваш город, кроме Maxmind и Google?

Таких которые правильно определяют и где можно бесплатно скачать базу не попадались. А там где нужно запросы делать, вот ту правильно: https://www.geoplugin.com/webservices/json хотя у них базы MaxMind и есть.

Ну и Яндекс карты тоже. А так если у вас карта гугла всё равно грузится, то наверное по ней тоже можно местоположение посетителя определить. На Яндекс картах это легко делается https://tech.yandex.ru/maps/jsapi/doc/2.1/dg/concepts/geolocation-docpage/ на Гугле не пробовал, наверное тоже не сложно. Плюс в том, что там можно не только по IP определять, но и по местоположению устройства, на телефоне с точностью до улицы определяет.

А что если при первой итерации сгенерируется максимальное число, что маловероятно но возможно. Может лучше генерировать секунды которые нужно прибавить к предыдущей дате. Или сразу сгенерировать столько дат сколько элементов в $result2, и отсортировать по возрастанию:

$start = mktime(0,0,0,1,1,2018);
$end = mktime(0,0,0,8,11,2019);

$count = count($result2);

$random = array();
for ($i = 0; $i < $count; $i++) {
$random[$i] = rand($start,$end);
}
sort($random);

$i = 0;
foreach ($result2 as $value){
$date = date('Y-m-d h:i',$random[$i]);
$i++;
}
keepersheet:
В любом случае, геолокация в современном интернете не проблема.

Проблема актуальные базы найти. Из перечисленных сервисов, мой город правильно определяет только MaxMind. Ну и сам Гугл.

Именно те комментарии которые в исходном коде страницы есть искали? Даже если в настройках jmcomments указать "Всегда включать комментарии в текст страницы" там всё равно будет только первая страница комментариев.

В исходном коде страницы комментарии есть? Что за компонент? В JComments по умолчанию они аяксом загружаются.

Всего: 3620