[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Обработка данных их формы
driven
Добрый день!
PHP только начал изучать, т.к. потребовалось отправлять данные с формы на email, и получать в виде списка.

Часть формы:
HTML
<FORM METHOD=POST ACTION="for.php">
Фамилия: <INPUT TYPE=TEXT NAME="familiy" SIZE="20" MAXLENGTH="50">
Имя: <INPUT TYPE=TEXT NAME="imy" SIZE="20" MAXLENGTH="50">
Отчество: <INPUT TYPE=TEXT NAME="ochestvo" SIZE="20" MAXLENGTH="50"><br>
<br>

<INPUT TYPE=SUBMIT VALUE="Оформить заказ">
<INPUT TYPE=RESET VALUE="Очистить форму">
</FORM>


Написал php обработчик:
PHP
<?php

$mail_to 
'sergeyinvest@rambler.ru';
$subject='Заказ';

$message "Фамилия - $familiy\r\n".
"Имя - $imy\r\n".
"Отчество - $ochestvo\r\n";

mail($mail_to$subject$message);



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

Фамилия -
Имя -
Отчество -

Попробовал сделать другой обработчик:
PHP
<?php

$mail_to 
'sergeyinvest@rambler.ru';
$subject='Заказ';

$message $HTTP_POST_VARS["familiy"]. $HTTP_POST_VARS["imy"]. $HTTP_POST_VARS["ochestvo"];

mail($mail_to$subject$message);


В результате получаю все данные в одну строчку.
Цитата

ИвановИванИванович

А хочется сделать нормальный список для получения на email, вот в таком виде:

Фамилия - Иванов
Имя - Иван
Отчество - Иванович



Спустя 4 часа, 35 минут, 45 секунд (13.03.2009 - 20:22) driven написал(а):
Попробовал сделать следующее:
PHP
<?php

$mail_to 
'sergeyinvest@rambler.ru';
$subject='Заказ';

$message "Фамилия - $_POST['familiy']\r\n".
"Имя - $_POST['imy']\r\n".
"Отчество - $_POST['ochestvo']\r\n";

mail($mail_to$subject$message);

и получил ошибку:
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in /home/... on line 6

Что не так сделано???

Спустя 5 минут, 58 секунд (13.03.2009 - 20:28) villy написал(а):
Попробуй так:)
****************************************************
$mail_to = 'sergeyinvest@rambler.ru';
$subject='Заказ';

$message = "Фамилия - $familiy\n".
"Имя - $imy\n".
"Отчество - $ochestvo\n";

mail($mail_to, $subject, $message);
****************************************************

Спустя 7 минут, 24 секунды (13.03.2009 - 20:35) villy написал(а):
полный формат mail(string $to,string $subject, string $msg[,string $headers])
Пример:
mail(
"somebody@mail.ru",
"mail robot",
"Hello!",
join("\r\n",array(
"from: webmaster@$SERVER_NAME",
"reply-to:: webmaster@$SERVER_NAME",
"x-mailer:php/".phpversion()
)
)
);

Спустя 19 часов, 50 минут, 35 секунд (14.03.2009 - 16:26) driven написал(а):
Цитата (villy @ 13.03.2009 - 17:28)
Попробуй так:)
****************************************************
$mail_to = 'sergeyinvest@rambler.ru';
$subject='Заказ';

$message = "Фамилия - $familiy\n".
"Имя - $imy\n".
"Отчество - $ochestvo\n";

mail($mail_to, $subject, $message);
****************************************************

Попробовал, а смысл замены? \r\n на \n
Строчка этого варианта и так переводится, а данные то отсутствуют. К тому же в этом варианте $familiy данные не отсылается как я понял из-за отключенной функции
Цитата

Доступно, если директива PHP register_globals = on.
значение по умолчанию register_globals = off.
Использование/доверие этому методу непредпочтительно.

Но потому как это снижает безопасность я и нехочу её использовать. к тому же не знаю где и как это переключается.

Поэтому и ищу другой вариант с $_POST["familiy"]
но получаю ошибку
---

Заменил
mail($mail_to, $subject, $message);
на указанную
mail(string $to,string $subject, string $msg[,string $headers]);
Тоже выдаёт ошибку.
Да и как я понимаю совпадает только $subject, а должно совпадать всё что включено в mail() и то что выше этой функции; если я правильно понимаю, но похоже что не до конца dry.gif Так

$message
mail($message);
и
$m
mail($m);

работают одинаково, а вот что вводить после $message =
и включать в функцию mail(); мне непонятно, похоже здесь что-то зависит от скобок,кавычек или ещё как??? непонятно?
---

А вот пример я не понял. Если не трудно, пожалуйста можно показывать на моём примере изменения, а то я только как несколько дней изучаю php

Спустя 47 минут, 50 секунд (14.03.2009 - 17:13) bret написал(а):
PHP
$mail_to "sergeyinvest@rambler.ru";
$subject "Заказ";

$message = <<<bIbIbI
Фамилия - {$_POST['familiy']}
Имя - 
{$_POST['imy']}
Отчество - 
{$_POST['ochestvo']}
bIbIbI;

mail($mail_to$subject$message);

Спустя 1 час, 58 минут, 20 секунд (14.03.2009 - 19:12) driven написал(а):
Цитата (bret @ 14.03.2009 - 14:13)
PHP
$mail_to = "sergeyinvest@rambler.ru";
$subject = "Заказ";

$message = <<<bIbIbI
Фамилия - {$_POST['familiy']}
Имя - 
{$_POST['imy']}
Отчество - 
{$_POST['ochestvo']}
bIbIbI;

mail($mail_to, $subject, $message);

Спасибо большое за вариант!
Правда я тут сам дошёл вот до такого варианта:
PHP
$mail_to 'sergeyinvest@rambler.ru';
$subject='Заказ';

$message 'Фамилия - '.$_POST['familiy']."\r\n".
'Имя - '.$_POST['imy']."\r\n".
'Отчество - '.$_POST['ochestvo'];

mail($mail_to$subject$message);


Какой из них посоветуете использовать?

Планирую усовершенствовать список, чтобы приходил в виде html таблицы, правда не знаю, возможно ли такое в принципе? Буду усовершенствовать дальше.

Ещё раз спасибо за вариант! smile.gif

Спустя 2 часа, 43 минуты, 3 секунды (14.03.2009 - 21:55) villy написал(а):
************************************
<?php

$mail_to = 'sergeyinvest@rambler.ru';
$subject='Заказ';

$message = "Фамилия - $_POST['familiy']\r\n".
"Имя - $_POST['imy']\r\n".
"Отчество - $_POST['ochestvo']\r\n";

mail($mail_to, $subject, $message);
*************************************
smile.gif а я кажись въехал что сдесь не так....у меня была такая фигня с $_REQUEST
попробуй записать вот так
<?php

$mail_to = 'sergeyinvest@rambler.ru';
$subject='Заказ';

$message = "Фамилия - {$_POST['familiy']}\r\n".
"Имя - {$_POST['imy']}\r\n".
"Отчество - {$_POST['ochestvo']}\r\n";

mail($mail_to, $subject, $message);

Спустя 1 час, 16 минут, 56 секунд (14.03.2009 - 23:12) twin написал(а):
Почитай вот это. Очень познавательно.

Спустя 16 часов, 41 минута, 5 секунд (15.03.2009 - 15:53) driven написал(а):
Цитата (villy @ 14.03.2009 - 18:55)
попробуй записать вот так

$message = "Фамилия - {$_POST['familiy']}\r\n".
"Имя - {$_POST['imy']}\r\n".
"Отчество - {$_POST['ochestvo']}\r\n";

Да этот вариант тоже работает! Теперь их стало целых три, но мне почему то ближе свой вариант, хотя он более нагромождённый кавычками. Наверное потому что до него дошёл сам - потратив 4 дня!!! Теперь можно начинать писать обработчик для своих форм! Осталось только продумать какой вариант всё таки лучше использовать?

Цитата (twin @ 14.03.2009 - 20:12)
Почитай вот это. Очень познавательно.

Большое спасибо за ссылку - интересный сайт!
Одно время когда начинал изучать HTML, мне повезло, наткнулся сразу на хороший интересный учебник здесь, а вот с php, уже больше месяца ищу в инете, и не могу найти ничего толкового, везде заумные фразы и только общие примеры, без нормального объяснения.

Надеюсь этот сайт окажется таковым! smile.gif

Ещё раз спасибо всем за помощь, в дальнейшем планирую ещё больше "оживить" свой сайт. Так что думаю ещё встретимся!!! rolleyes.gif

Спустя 1 час, 33 минуты, 43 секунды (15.03.2009 - 17:27) bret написал(а):
Цитата
Теперь их стало целых три, но мне почему то ближе свой вариант, хотя он более нагромождённый кавычками. Наверное потому что до него дошёл сам - потратив 4 дня!!! Теперь можно начинать писать обработчик для своих форм! Осталось только продумать какой вариант всё таки лучше использовать?

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

Спустя 5 часов, 57 минут, 53 секунды (15.03.2009 - 23:24) villy написал(а):
а энто ты зря....я часто вот из за таких фигней трачу кучу времени....и хотя знаю как сделать по другому...но возможность сделать так как я хочу мне просто не даст успокоиться...smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.