Страница 1 из 1

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

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

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

Задаю вечный вопрос:"Как быть и что делать ? "

Добавлено: 05 июл 2005, 23:27
AiK
видимо кодировку страницы указывать

Добавлено: 06 июл 2005, 12:23
Feniksa
Вместо "Привет, Hello!" Приходит
"Comments=%CF%F0%E8%E2%E5%F2%2C+Hello%21%21"

Мне кажется дело не в кодировке.

Добавлено: 06 июл 2005, 18:44
AiK

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

<form method="post" action="mailto:Feniksa@rambler.ru" enctype="text/plain">

Добавлено: 07 июл 2005, 10:16
stanlee
вообще то в идеале вывести все что в форме в функцию в скрипте5 которая все разложет по полочками и отправит

Добавлено: 07 июл 2005, 11:55
canegor
Попробуй скормить то что приходит, такой конструкции:
$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;
}

Добавлено: 07 июл 2005, 11:58
canegor
} закрывающую скобку забыл

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

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