Проблема с созданием формы

Обсуждение вопросов клиентского программирования.

Модератор: Duncon

Ответить
Feniksa
Сообщения: 17
Зарегистрирован: 10 июн 2005, 15:13

Я пишу етот код:
<form action="mailto:Feniksa@rambler.ru" method=post>
<textarea rows=5 cols=40 name=Comments></textarea>
<input type=submit value="Отправить">
</p>

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

Задаю вечный вопрос:"Как быть и что делать ? "
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

видимо кодировку страницы указывать
Даже самый дурацкий замысел можно воплотить мастерски
Feniksa
Сообщения: 17
Зарегистрирован: 10 июн 2005, 15:13

Вместо "Привет, Hello!" Приходит
"Comments=%CF%F0%E8%E2%E5%F2%2C+Hello%21%21"

Мне кажется дело не в кодировке.
Аватара пользователя
AiK
Сообщения: 2287
Зарегистрирован: 13 фев 2004, 18:14
Откуда: СПб
Контактная информация:

Код: Выделить всё

<form method="post" action="mailto:Feniksa@rambler.ru" enctype="text/plain">
Даже самый дурацкий замысел можно воплотить мастерски
stanlee
Сообщения: 2
Зарегистрирован: 07 июл 2005, 10:12

вообще то в идеале вывести все что в форме в функцию в скрипте5 которая все разложет по полочками и отправит
canegor
Сообщения: 12
Зарегистрирован: 04 июл 2005, 13:02
Откуда: Челябинск
Контактная информация:

Попробуй скормить то что приходит, такой конструкции:
$value = пришло ...
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;

а потом посмотри

Могу дать подпрограмму для разбора приходящих данных без всяких там CGI модулей:

# Читаем вводные данные (GET)
sub read_get {
$buffer = "$ENV{'QUERY_STRING'}";
@pairs = split(/&/, $buffer);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ s///g;
$value =~ s/\n/ /g;
$value =~ s/\|/ /g;
$value =~ tr/ / /s;
$value =~ s/<([^>]|\n)*>//g;
$FORM{$name} = $value;
}
canegor
Сообщения: 12
Зарегистрирован: 04 июл 2005, 13:02
Откуда: Челябинск
Контактная информация:

} закрывающую скобку забыл

Или можно такую подпрограмму еще в яндексе поискал - много бродит

тогда после вызова подпр. смотри свою строку Comments в $FORM{"Comments"}
Ответить