Требуется авторизоваться на сайте с помощью cURL .
Форма запроса:
<form id="index" action="https://www.mysite.com/studiologin/index.php" method="post" enctype="multipart/form-data">
<input type="hidden" id="client_datetime" name="client_datetime" value="" />
<input type="text" name="PerformerID" id="PerformerID" maxlength="50" value="" />
<input type="password" name="PPassword" id="PPassword" maxlength="50" value="" />
<input type="submit" id="mlogin" name="mlogin" value="Login" />
<input type="text" name="StudioID" id="StudioID" maxlength="50" value="" />
<input type="password" name="SPassword" id="SPassword" maxlength="50" value="" />
<input type="submit" id="slogin" name="slogin" value="Login" />
</form>
Содержание запроса:
Content-Type=multipart/form-data; boundary=---------------------------41184676334
POSTDATA =-----------------------------114782935826962
Content-Disposition: form-data; name="client_datetime"
Wed Jan 13 2010 04:49:35 GMT+0000
-----------------------------114782935826962
Content-Disposition: form-data; name="PerformerID"
login
-----------------------------114782935826962
Content-Disposition: form-data; name="PPassword"
password
-----------------------------114782935826962
Content-Disposition: form-data; name="mlogin"
Login
-----------------------------114782935826962
Content-Disposition: form-data; name="StudioID"
-----------------------------114782935826962
Content-Disposition: form-data; name="SPassword"
-----------------------------114782935826962--
Пишу такой код:
<?php
$date=date("D M d Y H:i:s \G\M\TO");
$postdata=array(
'client_datetime'=>'.$date.',
'PerformerID'=>'login',
'PPassword'=>'password',
'mlogin'=>'Login',
'StudioID'=>'',
'SPassword'=>''
);
// вход в систему
// имя хоста, куда будем заходить
$hostname = 'www.mysite.com';
// инициализация cURL
$ch = curl_init('https://'.$hostname.'/studiologin/index.php');
// получать заголовки
curl_setopt ($ch, CURLOPT_HEADER, 1);
// если ведется проверка HTTP User-agent, то передаем один из возможных
допустимых вариантов:
curl_setopt ($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT
5.1; en-US; rv:1.9.0.3) Gecko/2008092417 Firefox/3.0.3');
// елси проверятся откуда пришел пользователь, то указываем допустимый
заголовок HTTP Referer:
curl_setopt ($ch, CURLOPT_REFERER,
'https://'.$hostname.'/studiologin/index.php');
// использовать метод POST
curl_setopt ($ch, CURLOPT_POST, 1);
// сохранять информацию Cookie в файл, чтобы потом можно было ее использовать
curl_setopt ($ch, CURLOPT_COOKIEJAR, 'C:\AppServ\www\cookie.txt');
curl_setopt($ch,CURLOPT_COOKIEFILE,'C:\AppServ\www\cookie.txt');
// передаем поля формы
curl_setopt ($ch, CURLOPT_POSTFIELDS,$postdata);
// возвращать результат работы
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
// не проверять SSL сертификат
curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0);
// не проверять Host SSL сертификата
curl_setopt ($ch, CURLOPT_SSL_VERIFYHOST, 0);
// это необходимо, чтобы cURL не высылал заголовок на ожидание
curl_setopt ($ch, CURLOPT_HTTPHEADER, array('Expect:'));
// выполнить запрос
curl_exec ($ch);
// получить результат работы
$result = curl_multi_getcontent ($ch);
// вывести результат
echo $result;
// закрыть сессию работы с cURL
curl_close ($ch);
?>
Выдает это:
HTTP/1.1 302 Found Server: nginx/0.7.64 Date: Wed, 13 Jan 2010 05:15:25 GMT Content-Type: text/html Connection: keep-alive X-Powered-By: PHP/5.1.6 Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: member_skin=skin2; expires=Fri, 12-Feb-2010 05:15:25 GMT; path=/; domain=.needlive.com location: /performerarea/ Content-Length: 0
Что я делаю неправильно? Подскажите пожалуйста!
Спустя 1 час, 19 минут, 4 секунды (13.01.2010 - 10:35) Oyeme написал(а):
$result = curl_multi_getcontent ($ch);
curl_multi_getcontent — Возвращает результат операции, если был установлен параметр CURLOPT_RETURNTRANSFER
Что выдаёт?
$string = curl_exec($ch);
echo $string;
curl_multi_getcontent — Возвращает результат операции, если был установлен параметр CURLOPT_RETURNTRANSFER
Что выдаёт?
$string = curl_exec($ch);
echo $string;
Спустя 19 минут, 46 секунд (13.01.2010 - 10:54) teandr написал(а):
Добрый день,Oyeme!
Спасибо,что откликнулись
$string = curl_exec($ch);
echo $string;
выдает тоже самое:
HTTP/1.1 302 Found Server: nginx/0.7.64 Date: Wed, 13 Jan 2010 07:53:00 GMT Content-Type: text/html Connection: keep-alive X-Powered-By: PHP/5.1.6 Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: member_skin=skin2; expires=Fri, 12-Feb-2010 07:52:59 GMT; path=/; domain=.needlive.com location: /performerarea/ Content-Length: 0
Спасибо,что откликнулись
$string = curl_exec($ch);
echo $string;
выдает тоже самое:
HTTP/1.1 302 Found Server: nginx/0.7.64 Date: Wed, 13 Jan 2010 07:53:00 GMT Content-Type: text/html Connection: keep-alive X-Powered-By: PHP/5.1.6 Expires: Thu, 19 Nov 1981 08:52:00 GMT Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0 Pragma: no-cache Set-Cookie: member_skin=skin2; expires=Fri, 12-Feb-2010 07:52:59 GMT; path=/; domain=.needlive.com location: /performerarea/ Content-Length: 0
Спустя 9 минут, 25 секунд (13.01.2010 - 11:04) jetistyum написал(а):
тебе выдается хедер Location:
посмотри опцию
CURLOPT_FOLLOWLOCATION
посмотри опцию
CURLOPT_FOLLOWLOCATION
Спустя 7 минут, 25 секунд (13.01.2010 - 11:11) VolCh написал(а):
teandr
Грубо говоря ты авторизовался (скорее всего) и тебя перенаправляют уже на страницу с тем для чего ты авторизовался.
Грубо говоря ты авторизовался (скорее всего) и тебя перенаправляют уже на страницу с тем для чего ты авторизовался.
Спустя 31 минута, 35 секунд (13.01.2010 - 11:43) teandr написал(а):
Авторизовался?
Т.е. нужно попробывать перейти на следующую страницу сайта?
А как всё таки увидеть содержание именно этой страницы?
Заранее спасибо!
Т.е. нужно попробывать перейти на следующую страницу сайта?
А как всё таки увидеть содержание именно этой страницы?
Заранее спасибо!
Спустя 9 минут, 15 секунд (13.01.2010 - 11:52) VolCh написал(а):
ответ сервера "302 FOUND" означает, что запрашиваемая страница находится по другому адресу, адрес указан в Location - у тебя /performerarea/ , то есть теперь ты должен запрашивать её (согласно стандарта запрашивать ты её должен тоже через POST, но многие на это не рассчитывают и ждут GET, попробуй и так, и так, cURL'у я бы тут доверять не стал)
Спустя 57 секунд (13.01.2010 - 11:53) Oyeme написал(а):
Каким методом ты авторизируешсья?
1.Через коокисы
2.Пост.
2.1 В случаи поста тебе придётся всё время тоскать за собой ПОСТ.
Наверни ка сайт сделан на коокисах,тогда пост тебе тут вообще не пригодиться.
Как раз curl_exec($ch); выдаёт содержимое сайста в виде строки.
Просто выведи содержимой страници начально,потом уже работай с коокисамы.
Как тут и сказали при посте идёт редирикт,чтобы последовать поставь CURLOPT_FOLLOWLOCATION в 1.
1.Через коокисы
2.Пост.
2.1 В случаи поста тебе придётся всё время тоскать за собой ПОСТ.
Наверни ка сайт сделан на коокисах,тогда пост тебе тут вообще не пригодиться.
Как раз curl_exec($ch); выдаёт содержимое сайста в виде строки.
Просто выведи содержимой страници начально,потом уже работай с коокисамы.
Как тут и сказали при посте идёт редирикт,чтобы последовать поставь CURLOPT_FOLLOWLOCATION в 1.
Спустя 5 минут, 2 секунды (13.01.2010 - 11:58) jetistyum написал(а):
Цитата (VolCh @ 13.01.2010 - 11:52) |
cURL'у я бы тут доверять не стал) |
а это с чего бы??? если есть стандарт редиректа, ему должен следовать и cURL и браузер, так зачем изобретать велосипед...
Спустя 6 минут, 11 секунд (13.01.2010 - 12:04) teandr написал(а):
curl_setopt ($ch,CURLOPT_FOLLOWLOCATION,1); -работает!!!
Oyeme, ты гений!
Только вот заголовок выводится тоже
Как его убрать?
Спустя 7 минут, 43 секунды (13.01.2010 - 12:12) jetistyum написал(а):
а как на счет почитать доки о CURL
Спустя 3 минуты, 12 секунд (13.01.2010 - 12:15) VolCh написал(а):
jetistyum
Потому что по стандарту при 302 ответе на не GET или HEAD клиент должен спросить у пользователя осуществлять ли ридирект, как это спрашивать будет cURL я слабо представляю
Потому что по стандарту при 302 ответе на не GET или HEAD клиент должен спросить у пользователя осуществлять ли ридирект, как это спрашивать будет cURL я слабо представляю
Спустя 2 минуты, 22 секунды (13.01.2010 - 12:18) jetistyum написал(а):
я как-то не наблюдал чтобы браузер спрашивал о редиректе после поста...
можно пруфлинк на стандарт??? RFC ???
можно пруфлинк на стандарт??? RFC ???
Спустя 4 минуты, 14 секунд (13.01.2010 - 12:22) VolCh написал(а):
Цитата |
If the 302 status code is received in response to a request other than GET or HEAD, the user agent MUST NOT automatically redirect the request unless it can be confirmed by the user, since this might change the conditions under which the request was issued. |
http://tools.ietf.org/html/rfc2616#section-10.3.3
Вот потому-то я cURL'у и не доверяю обрабатывать редиректы при POST, то ли он будет вести себя как популярные браузеры не по стандарту, то ли у кого-то как-то будет спрашивать.
Спустя 8 минут, 5 секунд (13.01.2010 - 12:30) jetistyum написал(а):
VolCh, да, отчасти ты прав
но там сказано про работу с юзером, cURL реализация в PHP не предусматривает работу с юзером, как ты понимаешь
но тут же есть:
но там сказано про работу с юзером, cURL реализация в PHP не предусматривает работу с юзером, как ты понимаешь
но тут же есть:
Цитата |
Note: RFC 1945 and RFC 2068 specify that the client is not allowed to change the method on the redirected request. However, most existing user agent implementations treat 302 as if it were a 303 response, performing a GET on the Location field-value regardless of the original request method. The status codes 303 and 307 have been added for servers that wish to make unambiguously clear which kind of reaction is expected of the client. |
тоесть большинство юзер-агентов не придерживаются этого правила и обрабатывают 302 так же как если бы это был 303 ... посылая GET запрос
ну и еще, CURL ни разу не подводил в этих вопросахю Ну и сервер должен уметь обрабатывать результат работы браузера, которые в большинстве своем не придерживаются стандарта ...
Спустя 14 минут, 43 секунды (13.01.2010 - 12:45) VolCh написал(а):
jetistyum
Не хочется зависеть от того, что вдруг девы сURL'а решат работать по стандарту, а мой скрипт перестанет работать после очередного обновления сервака. Я лучше ручками сам не по стандарту сделаю и коммент поставлю, что это потому что в 2010 году большинство агентов на стандарт забивали, а сервера с этим были согласны
Не хочется зависеть от того, что вдруг девы сURL'а решат работать по стандарту, а мой скрипт перестанет работать после очередного обновления сервака. Я лучше ручками сам не по стандарту сделаю и коммент поставлю, что это потому что в 2010 году большинство агентов на стандарт забивали, а сервера с этим были согласны
Спустя 5 минут, 15 секунд (13.01.2010 - 12:50) jetistyum написал(а):
обратная совместимость думаю будет поддерживаться, тем более скорее исправят выдачу заголовка с 302 на 303 (явно промах программера) чем изменят работу cURL
я бы полностью на него полагался...
я бы полностью на него полагался...
Спустя 4 минуты, 13 секунд (13.01.2010 - 12:54) jetistyum написал(а):
по докам CURL_FOLLOWLOCATION:
Цитата |
TRUE to follow any "Location: " header that the server sends as part of the HTTP header (note this is recursive, PHP will follow as many "Location: " headers that it is sent, unless CURLOPT_MAXREDIRS is set). |
тоесть считай что это есть "согласие на все" (и есть согласие юзера на редирект) .. так что можно сказать что это и так придерживание стандартов ... и ничего менять нет смысла и нет возможности .
ну люблю я спорить!!! )
Спустя 6 минут, 20 секунд (13.01.2010 - 13:00) VolCh написал(а):
jetistyum
а запросит он гетом или постом? если постом, кстати, то можно "ловилку" курлобразных грабберов сделать, браузеры же гет дают
а запросит он гетом или постом? если постом, кстати, то можно "ловилку" курлобразных грабберов сделать, браузеры же гет дают
Спустя 9 минут, 21 секунда (13.01.2010 - 13:10) jetistyum написал(а):
вот это нужно проверить ... интересно кстати ..
Спустя 11 месяцев, 24 дня, 5 часов, 1 минута, 40 секунд (7.01.2011 - 18:11) Tigran написал(а):
Прошу вас выручите прям очень срочно нужно. Я не знаю в чем ошибка. Но не отправляется ничего. вот код самой формы:
<?
###########################
# Alokazay 435-695-848 #
# t-banks@mail.ru #
###########################
#Подключаем города с файла gorod.php
$gorod = Array();
$email = Array();
$cont = file('gorod.txt');
foreach ($cont as $key){
$i = strpos ($key,",");
$gorod[] = substr($key,0,$i);
$email[]= substr($key,$i+1);
}
#Форма отправки если данные не ведены то показываем первую форму
if (@$_REQUEST['gorod']==""){
echo '<form enctype="multipart/form-data" action="" method="post">';
echo '<center><h1>Подать заявку</h1></center><br><font color="red" size="2">*</font> <b>Город</b><br>';
echo '<select name="gorod" size="1">';
# формируем список городов из массива $gorod
foreach ($gorod as $key => $value){
$goroda .= '<option value="'.$key.'">'.$value.'</option>';
}
echo $goroda;
echo '</select>';
echo '
<br><br><font color="red" size="2">*</font> <b>Наименование исполнителя</b><br><input maxlength="" name="pole_1" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>Список участников</b><br><textarea cols="50" rows="5" name="pole_2"></textarea><br><br>
<font color="red" size="2">*</font> <b>Описание коллектива</b><br><textarea cols="50" rows="5" name="pole_3"></textarea><br><br>
<font color="red" size="2">*</font> <b>Мобильный телефон</b><br><input maxlength="" name="pole_4" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>E-mail</b><br>
<input maxlength="" name="pole_5" style="width: 300px;" value="" type="text"><br><br> <b>Вконтакте</b><br>
<input maxlength="" name="pole_6" style="width: 300px;" value="" type="text"><br><br> <b>Skype</b><br>
<input maxlength="" name="pole_7" style="width: 300px;" value="" type="text"><br><br> <b>ICQ</b><br>
<input maxlength="" name="pole_8" style="width: 300px;" value="" type="text"><br><br><font color="red" size="2">*</font> <b>Ссылка на ваш трек №1</b><br>
<input maxlength="" name="pole_9" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №2</b><br><input maxlength="" name="pole_10" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №3</b><br>
<input maxlength="" name="pole_11" style="width: 300px;" value="" type="text"></p>';
echo '<input type=submit name=go value="Отправить">';
echo '</form>';
}
else {
#После того как юзер ввел данные
#Шаблон писма, проверям на коректность введенные данные
$zayvka ='Наименование исполнителя/n'.
substr(htmlspecialchars(trim($_POST['gorod'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_1'])), 0, 50).
substr(htmlspecialchars(trim($_POST['pole_2'])), 0, 1000).
substr(htmlspecialchars(trim($_POST['pole_3'])), 0, 1000).
substr(htmlspecialchars(trim($_POST['pole_4'])), 0, 30).
substr(htmlspecialchars(trim($_POST['pole_5'])), 0, 60).
substr(htmlspecialchars(trim($_POST['pole_6'])), 0, 60).
substr(htmlspecialchars(trim($_POST['pole_7'])), 0, 12).
substr(htmlspecialchars(trim($_POST['pole_8'])), 0, 12).
substr(htmlspecialchars(trim($_POST['pole_9'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_10'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_11'])), 0, 100)
;
mail ($email[$_REQUEST['gorod']],substr(htmlspecialchars(trim($_POST['pole_1'])), 0, 50),$zayvka,"From:".substr(htmlspecialchars(trim($_POST['pole_5'])), 0, 60));
echo '<script src="http://fwave.ru/popin.js" type="text/javascript"></script>';
echo '<form enctype="multipart/form-data" action="" method="post">';
echo '<center><h1>Подать заявку</h1></center><br><font color="red" size="2">*</font> <b>Город</b><br>';
echo '<select name="gorod" size="1">';
# формируем список городов из массива $gorod
foreach ($gorod as $key => $value){
$goroda .= '<option value="'.$key.'">'.$value.'</option>';
}
echo $goroda;
echo '</select>';
echo '
<br><br><font color="red" size="2">*</font> <b>Наименование исполнителя</b><br><input maxlength="" name="pole_1" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>Список участников</b><br><textarea cols="50" rows="5" name="pole_2"></textarea><br><br>
<font color="red" size="2">*</font> <b>Описание коллектива</b><br><textarea cols="50" rows="5" name="pole_3"></textarea><br><br>
<font color="red" size="2">*</font> <b>Мобильный телефон</b><br><input maxlength="" name="pole_4" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>E-mail</b><br>
<input maxlength="" name="pole_5" style="width: 300px;" value="" type="text"><br><br> <b>Вконтакте</b><br>
<input maxlength="" name="pole_6" style="width: 300px;" value="" type="text"><br><br> <b>Skype</b><br>
<input maxlength="" name="pole_7" style="width: 300px;" value="" type="text"><br><br> <b>ICQ</b><br>
<input maxlength="" name="pole_8" style="width: 300px;" value="" type="text"><br><br><font color="red" size="2">*</font> <b>Ссылка на ваш трек №1</b><br>
<input maxlength="" name="pole_9" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №2</b><br><input maxlength="" name="pole_10" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №3</b><br>
<input maxlength="" name="pole_11" style="width: 300px;" value="" type="text"></p>';
echo '<input type=submit name=go value="Отправить">';
echo '</form>';
}
?>
Не знаю что делать нужно чтобы заработало. Вот то что назодится в файле gorod.txt:
Москва,2Kem@mail.com,alokazay@gmail.com,PSIHOZ00000@mail.ru
Рязань,2Kem@mail.ru,PSIHOZ00000@mail.ru
Минск,alokazay@gmail.com
Киев,alokazay@gmail.com
Толи action нужно создать толи что , вообще не знаю почему не пашет. Если кто может помочь напишите здесь инструкцию или мне в аську:
361053321
<?
###########################
# Alokazay 435-695-848 #
# t-banks@mail.ru #
###########################
#Подключаем города с файла gorod.php
$gorod = Array();
$email = Array();
$cont = file('gorod.txt');
foreach ($cont as $key){
$i = strpos ($key,",");
$gorod[] = substr($key,0,$i);
$email[]= substr($key,$i+1);
}
#Форма отправки если данные не ведены то показываем первую форму
if (@$_REQUEST['gorod']==""){
echo '<form enctype="multipart/form-data" action="" method="post">';
echo '<center><h1>Подать заявку</h1></center><br><font color="red" size="2">*</font> <b>Город</b><br>';
echo '<select name="gorod" size="1">';
# формируем список городов из массива $gorod
foreach ($gorod as $key => $value){
$goroda .= '<option value="'.$key.'">'.$value.'</option>';
}
echo $goroda;
echo '</select>';
echo '
<br><br><font color="red" size="2">*</font> <b>Наименование исполнителя</b><br><input maxlength="" name="pole_1" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>Список участников</b><br><textarea cols="50" rows="5" name="pole_2"></textarea><br><br>
<font color="red" size="2">*</font> <b>Описание коллектива</b><br><textarea cols="50" rows="5" name="pole_3"></textarea><br><br>
<font color="red" size="2">*</font> <b>Мобильный телефон</b><br><input maxlength="" name="pole_4" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>E-mail</b><br>
<input maxlength="" name="pole_5" style="width: 300px;" value="" type="text"><br><br> <b>Вконтакте</b><br>
<input maxlength="" name="pole_6" style="width: 300px;" value="" type="text"><br><br> <b>Skype</b><br>
<input maxlength="" name="pole_7" style="width: 300px;" value="" type="text"><br><br> <b>ICQ</b><br>
<input maxlength="" name="pole_8" style="width: 300px;" value="" type="text"><br><br><font color="red" size="2">*</font> <b>Ссылка на ваш трек №1</b><br>
<input maxlength="" name="pole_9" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №2</b><br><input maxlength="" name="pole_10" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №3</b><br>
<input maxlength="" name="pole_11" style="width: 300px;" value="" type="text"></p>';
echo '<input type=submit name=go value="Отправить">';
echo '</form>';
}
else {
#После того как юзер ввел данные
#Шаблон писма, проверям на коректность введенные данные
$zayvka ='Наименование исполнителя/n'.
substr(htmlspecialchars(trim($_POST['gorod'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_1'])), 0, 50).
substr(htmlspecialchars(trim($_POST['pole_2'])), 0, 1000).
substr(htmlspecialchars(trim($_POST['pole_3'])), 0, 1000).
substr(htmlspecialchars(trim($_POST['pole_4'])), 0, 30).
substr(htmlspecialchars(trim($_POST['pole_5'])), 0, 60).
substr(htmlspecialchars(trim($_POST['pole_6'])), 0, 60).
substr(htmlspecialchars(trim($_POST['pole_7'])), 0, 12).
substr(htmlspecialchars(trim($_POST['pole_8'])), 0, 12).
substr(htmlspecialchars(trim($_POST['pole_9'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_10'])), 0, 100).
substr(htmlspecialchars(trim($_POST['pole_11'])), 0, 100)
;
mail ($email[$_REQUEST['gorod']],substr(htmlspecialchars(trim($_POST['pole_1'])), 0, 50),$zayvka,"From:".substr(htmlspecialchars(trim($_POST['pole_5'])), 0, 60));
echo '<script src="http://fwave.ru/popin.js" type="text/javascript"></script>';
echo '<form enctype="multipart/form-data" action="" method="post">';
echo '<center><h1>Подать заявку</h1></center><br><font color="red" size="2">*</font> <b>Город</b><br>';
echo '<select name="gorod" size="1">';
# формируем список городов из массива $gorod
foreach ($gorod as $key => $value){
$goroda .= '<option value="'.$key.'">'.$value.'</option>';
}
echo $goroda;
echo '</select>';
echo '
<br><br><font color="red" size="2">*</font> <b>Наименование исполнителя</b><br><input maxlength="" name="pole_1" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>Список участников</b><br><textarea cols="50" rows="5" name="pole_2"></textarea><br><br>
<font color="red" size="2">*</font> <b>Описание коллектива</b><br><textarea cols="50" rows="5" name="pole_3"></textarea><br><br>
<font color="red" size="2">*</font> <b>Мобильный телефон</b><br><input maxlength="" name="pole_4" style="width: 300px;" value="" type="text"><br><br>
<font color="red" size="2">*</font> <b>E-mail</b><br>
<input maxlength="" name="pole_5" style="width: 300px;" value="" type="text"><br><br> <b>Вконтакте</b><br>
<input maxlength="" name="pole_6" style="width: 300px;" value="" type="text"><br><br> <b>Skype</b><br>
<input maxlength="" name="pole_7" style="width: 300px;" value="" type="text"><br><br> <b>ICQ</b><br>
<input maxlength="" name="pole_8" style="width: 300px;" value="" type="text"><br><br><font color="red" size="2">*</font> <b>Ссылка на ваш трек №1</b><br>
<input maxlength="" name="pole_9" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №2</b><br><input maxlength="" name="pole_10" style="width: 300px;" value="" type="text"><br><br> <b>Ссылка на ваш трек №3</b><br>
<input maxlength="" name="pole_11" style="width: 300px;" value="" type="text"></p>';
echo '<input type=submit name=go value="Отправить">';
echo '</form>';
}
?>
Не знаю что делать нужно чтобы заработало. Вот то что назодится в файле gorod.txt:
Москва,2Kem@mail.com,alokazay@gmail.com,PSIHOZ00000@mail.ru
Рязань,2Kem@mail.ru,PSIHOZ00000@mail.ru
Минск,alokazay@gmail.com
Киев,alokazay@gmail.com
Толи action нужно создать толи что , вообще не знаю почему не пашет. Если кто может помочь напишите здесь инструкцию или мне в аську:
361053321