Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Как будет быстрее, диапазоны between
 
 автор: himic   (14.11.2008 в 14:48)   письмо автору
 
 

Нашёл базу диапазонов ИП адресов.
Сейчас сделал вот такую функцию:

<?function who_country($ip){
$ip_num=iptonum($ip);
$sql="SELECT cn FROM geoip WHERE $ip_num BETWEEN start AND end limit 1";
//echo $sql;
$res=mysql_query($sql);
if(
$arr=mysql_fetch_array($res)){
$cn=$arr['cn'];
return 
$cn;
}
//if($arr=mysql_fetch_array($res)):
else{
return 
'';
}
?>


Но она очень тормозит, ведь для каждого сообщения я её вызываю.
Может сделать связь и организовать это одним селектом, но там всё равно будет between.
Ещё вариант, обрабатывать сразу при добавлении камента. Добавить ещё одно поле и туда писать код страны.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования