Простая форма PHP = слишком просто, чтобы на самом деле работать? - PullRequest
1 голос
/ 28 июня 2010

Я сижу здесь, удивляясь, не слишком ли просто это решение для php-формы. Или, ну, это работает, но всегда ли это будет работать?

Кроме того, когда вы получаете электронное письмо, он говорит ОТ: zsf34o6.mywebsite.com@web09.b-one.com Это означает, что большинство почтовых клиентов помещают это прямо в корзину. Как я могу изменить его на введенный адрес электронной почты?

Спасибо!

<form method="POST" action="mailer.php">
   <input type="text" name="name" size="19">
   <input type="text" name="phone" size="19">
   <input type="submit" value="Submit" name="submit">
</form> 

<?php
if(isset($_POST['submit'])) {

$to = "you@you.com";
$subject = "From website";
$name_field = $_POST['name'];
$phone_field = $_POST['phone'];

$body = "From: $name_field\n E-Mail: $phone_field\n";

echo "Data has been submitted to $to!";
mail($to, $subject, $body);

} else {

echo "Error!";

}
?>

1 Ответ

6 голосов
/ 28 июня 2010

Это сработает, но ваш получатель получит много спама после того, как его не будет некоторое время. Вы можете значительно сократить это, поместив другое поле в форму, которая скрыта с помощью CSS, а затем проверив, что оно все еще пусто, перед отправкой электронной почты. Что касается настройки обратного адреса, используйте четвертый параметр в почтовой функции PHP. Это будет выглядеть примерно так:

mail ($ to, $ subject, $ body, "From: $ fromAddress \ n");

Вот несколько быстрых и грязных кодов, которые я использовал для аналогичной формы для веб-сайта, чтобы пересылать сообщение на чей-то смартфон таким образом, чтобы упростить повторный вызов в пути: http://rietta.com/stackoverflow/sample-form.txt

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...