Помогите с автоматической заменой action при использовании select

void656

Новичок
Помогите с автоматической заменой action при использовании select

есть форма обратной связи:

<form action="mail.php" method="post" name="form1" target="_self">
<select name="list3" id="select3">
<option value="№5!" "checked">Выберите район</option>
<option value="№1 Балашихинский район">Балашихинский район</option>
<option value="№4 Волоколамский район">Волоколамский район</option>......


как сделать так, чтобы при выборе из списка одного из пунктов, автоматически изменялся фаил обработчика "action=" на mail1.php, mail4.php, mail5.php

или в самом скрипте mail.php сделать так, чтоб при выборе из списка одного из пунктов изменялась переменная $sMY_EMAIL="[email protected]";
 

grigori

( ͡° ͜ʖ ͡°)
Команда форума
а при чем тут PHP?

-~{}~ 25.04.10 17:12:

хотя ...

сначала лучше начать с http://phpfaq.ru/na_tanke
потом определить вопрос точно
 

void656

Новичок
Я ни где не писал, что это должно быть на php реализовано,
я у вас прошу помощи потому, что сам не знаю и у меня нету времени изучать языки вэбпрогрммирования.
 

c0dex

web.dev 2002-...
Команда форума
Партнер клуба
void656
тогда в форум работа, и цену вопроса озвучить. Тут не подают.
 

fixxxer

К.О.
Партнер клуба
>> Я ни где не писал, что это должно быть на php реализовано,

Но написал в раздел "Вопросы по программированию на PHP".


>> сам не знаю и у меня нету времени изучать

Извини, но ты не по адресу: на этом форуме принято помогать тем, кто хочет изучать и демонстрирует такое желание. Для тех же, кому надо, чтобы сделали за него, есть раздел "Работа".
 

Фанат

oncle terrible
Команда форума
void656
судя по твоей форме, при выборе автоматически будет изменяться переменная $_POST['list3']

сделать, чтобы в зависимости от нее изменялось значение $sMY_EMAILб попробуй уже сам.
 

baev

‹°°¬•
Команда форума
void656, а что делают файлы «mail1.php, mail4.php, mail5.php»?
 

void656

Новичок
Автор оригинала: baev
void656, а что делают файлы «mail1.php, mail4.php, mail5.php»?
это клоны скрипта mail.php который отсылает форму, только в них разные адреса почты ($sMY_EMAIL)

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

void656

Новичок
но насколько я знаю у оператора if только два значения 0 и 1, а нужно-то 4-5.
 

pilot911

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

void656

Новичок
тоесть мне нужен код типа
if (list3=№1 Балашихинский район) {
$sMY_EMAIL="[email protected]";
} elseif (list3=№4 Волоколамский район) {
$sMY_EMAIL="[email protected]";
} elseif (list3=№5!) {
$sMY_EMAIL="[email protected]";
}
endif

только вот чуствую проблемы с синтаксисом,

-~{}~ 26.04.10 11:54:

Автор оригинала: pilot911
даа... в таких случаях лучше пойти куда-нибудь работать за копейки во имя знаний, чем на коленке в одиночестве что-то пытаться делать
да нет, уж лучше один и на коленке, чем идти куда-то работать за копейки да еще и выглядеть дебилом в глазах работодателя.
 

Adelf

Administrator
Команда форума
да еще и выглядеть дебилом в глазах работодателя.
Сейчас ты выглядишь не лучше.

С какой целью ты пишешь: value="№1 Балашихинский район" ?

Можно же взять и предположить что 1 - это будет данный район.
2 - другой и т.д.
Сделать value="1", а в скрипте уже смотреть просто номера.
 

void656

Новичок
Автор оригинала: Adelf
Сейчас ты выглядишь не лучше.
Нет а как по вашему люди что-то узнают? Они спрашивают у других людей! Вы все когда-то тоже ничего не знали, вас научили, вот и я учусь...

Вы вот зайдите на какой нибудь, скажем, автомобильный форум со своим вопросом, вас там тоже засмеют, будут сыпать терминами и отсылать по автосервисам, а вам всего-то нужно узнать как правильно закрутить колесо.

а по теме, если я не буду писать value="№1 Балашихинский район", то потом в скрипте придется опять присваивать номерам районы.
 

Фанат

oncle terrible
Команда форума
void656
да, с синтаксисом проблемы.
сравнение делается двумя знаками равно.
строки пишутся в кавычках.
имя переменной, скоторой надо сравнивать, я писал выше
но насколько я знаю у оператора if только два значения 0 и 1,
операторов IF можно написать несколько штук подряд.

-~{}~ 26.04.10 13:36:

если я не буду писать value="№1 Балашихинский район", то потом в скрипте придется опять присваивать номерам районы.
правильно.
всегда так и делается.
все районы прописываются на сервере, в массив, например, и подставляются из него. но пока ты учишься, можешь делать, как сейчас. так даже лучше
 

A1x

Новичок
а по теме, если я не буду писать value="№1 Балашихинский район", то потом в скрипте придется опять присваивать номерам районы.
если писать везде имена районов и у тебя изменится одно имя придется исправлять твой код во многих местах
сделай так
PHP:
$regions = array(
    1 => '№1 Балашихинский район',
    2 => '№4 Волоколамский район'
);
$mails = array(
    1 => '[email protected]',
    2 => '[email protected]'
);
$sMY_EMAIL = $mails[intval($_POST['list3'])];
 

void656

Новичок
A1x

Спасибо тебе огромнейшее!!! работает как часы, побольше бы таких людей как ты!!

А еще такой вопросик: у меня список $regions из 40 пунктов

$regions = array(
1 => '№1 Балашихинский район',
2 => '№4 Волоколамский район',
3 => '№2 Воскресенский район',
4 => '№1 Дмитровский район',
5 => '№2 Домодедовский район',
...
39 => '№1 Щелковский район',
40 => 'Другой район'
);
и список $mails получился такой же, но адресов почты всего 3, можно ли как нибудь через запятую или точку-с-запятой указывать номера, например

$mails = array(
1,2,6 => '[email protected]',
3,4,5,7 => '[email protected]',
);
 
Сверху