tim21701

Выбор города

Рекомендуемые сообщения

tim21701    497

Задумался о том, что бы во время регистрации позволить новому пользователю не вводить свой город вручную, а выбрать его из списка.
У такого метода есть два неоспоримых преимущества: сводим ошибки "на нет" (в названии населённого пункта) и минимизируем лишние телодвижения - указать свой город можно выбрав его из списка, ничего вводить не нужно.



Изображение

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 097

Вопрос даже не в "дешевле", а в "где взять полную базу городов по регионам?".

И не только для России...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
tim21701    497

... "где взять полную базу городов по регионам?".

Если, "прикрутить" этот вариант, для отправки посылок - используя "почту России", то полный список населённых пунктов можно посмотреть у них на сайте. Или тут.

(И за рубеж, в том числе.)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
tim21701    497

up

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 097

Выкладывать чужие платные модули нельзя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexFisher    194

Подскажите, а как вызнать id моих регионов? Я так понимаю, все дето в таблице геозоны +-.. Все тут Рос. регионами делятся, а я в Украине живу. Мне-б знать, чтоб 4000 значений не пролистывать, что, мол, вот она - Волыньская обл. под номером 2413. Дальше я сам. 8)

Инфы по этому вопросу не нашел. Мож, не так искал. Да! Мне для руссификации регионов.

С уважением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
afwollis    1 097
AlexFisher, найдите country_id Украины и потом по этому значению ищите регионы

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexFisher    194

Гениально! Они-ж взаимосвязаны! Спасибо большое! :)

С уважением.

Кстати, phpMyAdmin не находил по id никак страну Ukraine. Это так должно быть? Я его просто третий раз в жизни вижу. Регистры ни при чем. А вот по counry_id=220 нашел...

Изменено пользователем AlexFisher

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Alexa    2

Подскажите, плз, наиболее гуманный сп-б, чтобы при рег-ции в поле "Регион /Область" 1-м в списке шла Москва, следом - Моск. обл.?

По умолчанию в этой табл. `oc_zone` идет сортировка по zone_id (первая Республика Хакасия, zone_id=2721).

Изменять в БД zone_id для Москвы и Моск. обл. чтобы они стали 1-ми в списке или есть более адекватный сп-б?

Если вариант только с БД, то какой корректный запрос в БД сделать для нужной сортировки...?

Или делать по аналогии с гостевым оформлением заказа область по умолчанию?

Изменено пользователем Alexa

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Xpl    11

как удобно так и делай, в базе ид можно поменять через phpmyadmin не каких запросов тебе не надо будет, зашел ручками на карандашик нажал и пользуешься

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
MaZI    12

Вопрос даже не в "дешевле", а в "где взять полную базу городов по регионам?".

И не только для России...

по россии

http://www.gnivc.ru/Document.aspx?id=1571

правда в кладере много мусора типа "железнодорожная будка 40км" (но даже вконтакте есть этот косяк)

Ну, думаю что ничего подобного не найду. Перелопатил несметное количество форумов по OpenCart, но ничего подобного нет. Тем более что и тут никто не отвечает.

Что ж, буду брать. Как разберусь с этим модулем - (наверное) выложу тут. (надеюсь "кореец" не сильно обидится и обеднеет от этого) :D

думаю сделаю скрипт выгрузки из кладера в БД. потом прикручу к Opencard, но будут только российские города и регионы.

Правда пока не уверен, что будет время)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yesvik    485

думаю сделаю скрипт выгрузки из кладера в БД.

Удачи тебе, и времени побольше для разбора структуры КЛАДР...

Это я съязвил потому что сам был таким наивным :)

А если серьёзно - возьми ОКАТО, из него выдернеш всё что тебе надо...

О структуре можеш почитать тут

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
MaZI    12

Удачи тебе, и времени побольше для разбора структуры КЛАДР...

Это я съязвил потому что сам был таким наивным :)

А если серьёзно - возьми ОКАТО, из него выдернеш всё что тебе надо...

О структуре можеш почитать тут

ну а что там разбираться? я уже делал сайт с использованием кладра. правда тогда ajax не знал и мускул только начал изучать. сделал всё на файлах. работает достаточно быстро. =) на счёт ОКАТО спасибо. разберёмся, только вот что то у них беда с ПО.

1) Они наверное единственные, кто ещё использует FoxPro к тому же старой версии

2) с кириллицей проблемы =( не в ANSI ни в UTF-8 норм не отображает.

а базу Украины и Белоруссии Вы не подскажете, где можно найти?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Yesvik    485

ну а что там разбираться? я уже делал сайт с использованием кладра. правда тогда ajax не знал и мускул только начал изучать. сделал всё на файлах. работает достаточно быстро. =) на счёт ОКАТО спасибо. разберёмся, только вот что то у них беда с ПО.

1) Они наверное единственные, кто ещё использует FoxPro к тому же старой версии

2) с кириллицей проблемы =( не в ANSI ни в UTF-8 норм не отображает.

а базу Украины и Белоруссии Вы не подскажете, где можно найти?

Я КЛАДР ковырял до улиц с домами и индексов... там основная веселуха.

Я в итоге всё что мне надо было выковырял из какого-то ПО Почты Росии, но КЛАДР, чисто из принципа - расковырял.

Сейчас найти не могу, но у меня точно где-то должен быть дамп базы с КЛАДР'а... правда там данные 2005-2006 года и помню что дамп был весом около 100 метров.

Кодировка в ОКАТО - CP866

Про базы Украины и Беларуси ничего не скажу... не было нужды.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
tim21701    497

А у меня вот так было, сейчас правда ещё кое что добавлено:

(сори, что без перевода)

Форма регистрации:

Изображение

Личный кабинет:

Изображение

Изображение

Скриншоты не все, влом делать..

Сейчас там на много больше "наворотов" - три программиста старалось.

Потрачено около 3-х тысяч деревянных знаков. В итоге, ошибки новых клиентов во время регистрации - полностью сведены к нулю.

;)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Fix305    164

откуда базу городов брали, если не секрет?)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
AlexFisher    194

tim21701, приветствую!

И еще, если снова-таки не секрет, как индекс свой узнаете? Российский сервис, али как? Ибо поискал тут-же в поисковиках - что-то не то выплывает. Мож, запрос неправильно даю...

С уважением.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sergfedo    6

tim21701, приветствую!

И еще, если снова-таки не секрет, как индекс свой узнаете? Российский сервис, али как? Ибо поискал тут-же в поисковиках - что-то не то выплывает. Мож, запрос неправильно даю...

С уважением.

Покурил на эту тему. Можно это парсить, но проще думаю воспользоваться Google Geocoding API.

Вот статья с хабра по теме.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
tim21701    497

...если не секрет, как индекс свой узнаете? Российский сервис, али как?...

Всё просто...

Заходите на сайт "

EMS Почта России" и открываете страницу с интерактивной картой. Выбираете нужный район и видим всё - что необходимо (индекс, улица и тел. почтового отделения).

Выделяем, копируем... и создав запрос к базе - импортируем...

Посидел два вечера, и у меня в базе вся Россия. ;)

По крайней мере, я теперь спокоен - что новый пользователь укажет при регистрации ПРАВИЛЬНЫЙ адрес и индекс.

И если он живет, где то в селе или кишлаке, то может просто зайти в личный кабинет и посмотреть - по какому адресу он получит посылку. Где кроме адреса есть ещё и телефон...

Пусть теперь им рвут мозг своими вопросами (когда и почему так долго идёт посылка, или "где моя квитанция, чувак?!")...

:D

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
sergfedo    6

Можно сделать проще.

Сраница на запросы вида:

// запрос по индексу
//$json = file_get_contents('http://www.russianpost.ru/PostOfficeFindInterface/AddressComparison.asmx/FindOPSByIndexStr?IndexStr=109240');
// запрос по адресу
$json=file_get_contents('http://www.russianpost.ru/PostOfficeFindInterface/AddressComparison.asmx/FindOPSByContextStr?ContextStr=' . urlencode('Москва Устьинский проезд 2/14'));
var_dump(json_decode($json, true));

Выдаёт JSON с полным адресом ближайшего почтового отделения:

array(2) {
  [0]=>
  array(6) {
    ["Number"]=>int(0)
    ["Index"]=>NULL
    ["Name"]=>NULL
    ["Address"]=>NULL
    ["Phone"]=>NULL
    ["Status"]=>int(0)
  }
  [1]=>
  array(6) {
    ["Number"]=>int(1)
    ["Index"]=>string(6) "109240"
    ["Name"]=>string(16) "МОСКВА 240"
    ["Address"]=>string(85) "      г. Москва Котельническая набережная д.1/15В   "
    ["Phone"]=>string(31) "(495) 915-41-64,(495) 915-44-31"
    ["Status"]=>int(1)
  }
}

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти


  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу