Как в анкете пользователя графу "Город" сделать выпадающим списком?

+5
2.96K
Тут спрашивали: instantcms.ru/forum/thread4698.html
Тут отвечаю :)
Решение не универсальное, список городов в админку для редактирования не вынесен. Но данное решение подойдет для большинства региональных порталов, где городов до десятка, ну или 2-3 десятка :)
Итак, скопируем файл com_users_edit_profile.tpl из дефолтного шаблона в наш. Начнем этот файл редактировать:
Заменим код (строки 61-66)
  1.  
  2. <td valign="top">
  3. <input name="city" type="text" id="city" style="width:300px" value="{$usr.city}"/>
  4. <script type="text/javascript">
  5. {$autocomplete_js}
  6. </script>
  7. </td>
на следующее
  1.  
  2. <td valign="top">
  3. <select name="city" id="city" style="width:300px">
  4. <option value="0" {if $usr.city==0} selected {/if}>-</option>
  5. <option value="Город 1" {if $usr.city=='Город 1'} selected {/if}>Город 1</option>
  6. <option value="Город 2" {if $usr.city=='Город 2'} selected {/if}>Город 2</option>
  7. <option value="Город 3" {if $usr.city=='Город 3'} selected {/if}>Город 3</option>
  8. </select>
  9. </td>
  10.  
Городов в списке может быть сколько угодно. У меня 12 :)
Теперь при рендактировании профиля пользователь может выбрать один из списка городов, либо оставить прочерк, если не хочет указывать.
У меня работает :)
0
Лиззи Лиззи 11 лет назад #
очень хорошая идея! +1
как вариант можно добавить в список графу "Другой город", при нажатии на которую пользователю предлагается самому ввести название
еще можно, наверное, сделать так, чтобы вписанные пользователем города добавлялись в этот список
0
Zau4man Zau4man 11 лет назад #
тогда зачем вобще что-то переписывать...
в стандартном варианте все города, которые заносят пользователи запоминаются, и при вводе вылазит список с похожими городам ,уже ранее введенными...
Суть поста в блоге, сузить выбор пользователей... А то получается: Москва, москоу сити, моссква и т.п.
0
Лиззи Лиззи 11 лет назад #
я лишь высказала свое мнение и написала "как вариант можно..."
конечно, различное написание одного и того же города мне тоже не нравится, но если вдруг города не окажется в списке, то что пользователю делать? ставить прочерк? именно поэтому я и написала, что можно было бы добавить функцию ввода своего города. вот и все.
и в самом начале я даже написала, что этот пост - очень хорошая идея. так что не злитесьsmileвы все равно молодец =)
0
nikolas nikolas 11 лет назад #

Евгений.

..с табой полностью согласен..в стандартном варианте все города, которые заносят пользователи запоминаются,..просто графу при регистрации город обязаловку сделать и все..а там пускай сами пользователи заполняют...чем ищют свой город в длинном списке стран ..регионов..городов...А например девушка из деревни КУКУЕВА...при регистрации не найдет своего места жительства...
0
lezginka.ru lezginka.ru 11 лет назад #
а почему нельзя в дефолт добавить список всех городов России
+1
Александр Александр 11 лет назад #
А зачем Белорусов обижать???
0
Soviet-Girl Soviet-Girl 11 лет назад #
Вот спасибо! Это же я спрашивала про города. Мне не хочется, чтобы пользователи могли добавлять в графу "город" разную абру-кадабру или интерпретировали своё место жительства каждому как хочется. И поиск по городам сужается.
А "другой город", как пишет Лиззи, думаю, нужен - по логике пользователь всё равно сначала посмотрит свой город в выпадающем списке, а если его там нет, то нажмёт "другой город" и введёт своё. Только запоминание в этом же списке, думаю, делать не стоит, мало ли чего он там накалякает.
0
Soviet-Girl Soviet-Girl 11 лет назад #
У меня есть большущая база российских городов. Вот такого вида:
Абаза (Республика Хакасия)
Абакан (Республика Хакасия)
Абдулино (Оренбургская область)
Абинск (Краснодарский край)
Агидель (Республика Башкортостан)

Туда вошли практически все города и городишки России.
Кому надо ловите.
0
adm7 adm7 1 лет назад #
Можно этот же выпадающий список по уровням
Страна - Регион - Город/Деревня
Выбрал страну получай Регион и т.д.
0
Fuze Fuze 11 лет назад #
поищите, эта проблема обсуждалась не раз, более того есть решения здесь на сайте.

Еще от автора

Слайд-панель
Компонент добавит на сайт возможность вывести вверху сайта небольшую "выезжающую" панель, в которой можно анонсировать приложение сайта.
Выбор страницы в пагинации
Делюсь шаблоном пагинации, в котором добавлена возможность выбрать страницу в пагинации, когда страниц очень много.
Ztemplate - расширяем опции виджета Элементы шаблона
Небольшой, но удобный компонент, который позволит добавить в опцию "Что выводить?" виджета "Элементы шаблона" новые пункты или скрыть существующие.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.