parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Пожалуйста...

Leshka 29.01.2003 12:15

Мне нужно сделать раздел сайта, где люди могут оставлять объявления о вакансиях или резюме. Записи хранятся в базе данных. Понятно, что вместо полей, значения которых (текст) заранее определены (специальность, пол, опыт работы и т. д.), в базе лучше хранить их числовые коды. Чтобы сопоставить код значению я использовал хеш. Например, часть хеша для городов выглядит так:
$job_data[
	$.city[
		$.0[Не важно]
		$.1[Москва]
		$.2[Санкт-Петербург]
		$.3[Новосибирск]
		$.4[Агапово]
		$.5[Алматы]
		$.6[Архангельск]
		$.7[Бабруйск]
		$.8[Бийск]
		$.9[Братск]
		$.10[Великий Новгород]
		$.11[Вильнус]
		$.12[Владивосток]
		$.13[Волгоград]
		$.14[Воронеж]
		$.15[Днепропетровск]
		$.16[Екатеринбург]
		$.17[Зеленоград]
		$.18[Иваново]
		$.19[Ижевск]
		$.20[Иркутск]
		$.21[Казань]
		$.22[Калининград]
		$.23[Кемерово]
		$.24[Киев]
		$.25[Кировоград]
		$.26[Кишинев]
		$.27[Кострома]
		$.28[Краснодар]
		$.29[Лиепая]
		$.30[Майкоп]
		$.31[Минск]
		$.32[Нижний Новгород]
		$.33[Новоуральск]
		$.34[Обнинск]
		$.35[Одесса]
		$.36[Оренбург]
		$.37[Пермь]
		$.38[Петрозаводск]
		$.39[Петропавловск-Камчатский]
		$.40[Рига]
		$.41[Ровно]
		$.42[Ростов-на-Дону]
		$.43[Самара]
		$.44[Саранск]
		$.45[Саратов]
		$.46[Старая Русса]
		$.47[Сургут]
		$.48[Сызрань]
		$.49[Тамбов]
		$.50[Ташкент]
		$.51[Тверь]
		$.52[Тольятти]
		$.53[Томск]
		$.54[Тула]
		$.55[Тюмень]
		$.56[Ульяновск]
		$.57[Уфа]
		$.58[Хабаровск]
		$.59[Харьков]
		$.60[Челябинск]
		$.61[Ярославль]
	]
]
В выводе формы пишу:
<select name="city">
^job_data.city.foreach[key;value]{
	<option value=$key^if($key == 0){ selected}>$value
}
</option></select>
На выходе получается:
<select name="city">
<option value=55>Тюмень
<option value=20>Иркутск
<option value=5>Алматы
<option value=56>Ульяновск
<option value=21>Казань
<option value=6>Архангельск
<option value=57>Уфа
<option value=22>Калининград
<option value=7>Бабруйск
<option value=58>Хабаровск
<option value=23>Кемерово
<option value=8>Бийск
<option value=59>Харьков
<option value=24>Киев
<option value=9>Братск
<option value=25>Кировоград
<option value=26>Кишинев
<option value=27>Кострома
<option value=28>Краснодар
<option value=29>Лиепая
<option value=60>Челябинск
<option value=61>Ярославль
<option value=30>Майкоп
<option value=31>Минск
<option value=32>Нижний Новгород
<option value=33>Новоуральск
<option value=34>Обнинск
<option value=35>Одесса
<option value=36>Оренбург
<option value=37>Пермь
<option value=38>Петрозаводск
<option value=39>Петропавловск-Камчатский
<option value=40>Рига
<option value=41>Ровно
<option value=42>Ростов-на-Дону
<option value=43>Самара
<option value=44>Саранск
<option value=45>Саратов
<option value=10>Великий Новгород
<option value=46>Старая Русса
<option value=11>Вильнус
<option value=47>Сургут
<option value=12>Владивосток
<option value=48>Сызрань
<option value=13>Волгоград
<option value=49>Тамбов
<option value=14>Воронеж
<option value=15>Днепропетровск
<option value=16>Екатеринбург
<option value=17>Зеленоград
<option value=18>Иваново
<option value=19>Ижевск
<option value=50>Ташкент
<option value=0 selected>Не важно
<option value=51>Тверь
<option value=1>Москва
<option value=52>Тольятти
<option value=2>Санкт-Петербург
<option value=53>Томск
<option value=3>Новосибирск
<option value=54>Тула
<option value=4>Агапово
</option></select>