Как изменить адрес электронной почты в контактной форме PHP

  • Автор темы Pbko
  • Обновлено
  • 12, May 2024
  • #1
Я создал контактную форму PHP с проверкой, которая работает нормально. Но проблема с получением. При отправке я получаю электронное письмо, но оно показывает неверный адрес электронной почты из региона. Я хочу показать свой настоящий адрес. Вот живая ссылка http://www.luxpress.co.uk/checking/contact_form.php

при отправке введите свой собственный адрес электронной почты, вы также получите электронное письмо с подтверждением. проверьте, что я получаю из района. откуда: 2.secureserver.net к: дата: Ср, 31 августа 2016 г., 00:38 Я хочу показать

Вот мой код формы проверки PHP
 <?php
// Initialize variables to null.
$name =""; //Sender Name
$email =""; //Sender's email ID
$purpose =""; //Subject of mail
$message =""; //Sender's Message

$nameError =""; 
$emailError ="";
$purposeError ="";
$messageError ="";
$successMessage ="";

// Additional headers

$headers .= 'From: Birthday Reminder <[email protected]>' . "\r\n";

//On submitting form below function will execute

if(isset($_POST['submit']))
 {
 // checking null values in message
 if (empty($_POST["name"])){
 $nameError = "Name is required";
 }
 else {
 $name = test_input($_POST["name"]);
 // check name only contains letters and whitespace
 if (!preg_match("/^[a-zA-Z ]*$/",$name)){
 $nameError = "Only letters and white space allowed";
 }
 }
// checking null values in message
 if (empty($_POST["email"])) {
 $emailError = "Email is required";
 }
 else {
 $email = test_input($_POST["email"]);
 }
// checking null values in message 
 if (empty($_POST["purpose"])) {
 $purposeError = "Purpose is required";
 }
 else {
 $purpose = test_input($_POST["purpose"]);
 }
// checking null values in message
 if (empty($_POST["message"])) {
 $messageError = "Message is required";
 }
 else {
 $message = test_input($_POST["message"]);
 }
 // checking null values in all fields
if( !($name=='') && !($email=='') && !($purpose=='') &&!($message=='') )

 {// checking valid email
 if (preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/",$email)) {

 $header= $name."<". $email .">";
 $headers = "CONTACT FORM";
 /* Let's prepare the message for the e-mail */
 $msg = "Hello! $name

Thank you...! For Contacting Us.

Name: $name
E-mail: $email
Purpose: $purpose
Message: $message
This is a Contact Confirmation mail.
We Will contact You as soon as possible.";

$msg1 = " $name Contacted Us.

Here are some information about $name.

Name: $name
E-mail: $email
Purpose: $purpose
Message: $message ";

/* Send the message using mail() function */
 if(mail($email, $headers, $msg ) && mail("[email protected]", $header, $msg1 ))
 {
 $successMessage = "Thank you and that Red Dragon Digital Services received their enquiry and someone will get back to them.";
 }
 }
else { $emailError = "Invalid Email"; }

}
}
// function for filtering input values
function test_input($data) {
 $data = trim($data);
 $data = stripslashes($data);
 $data = htmlspecialchars($data);
 return $data;
}

?>
PHP:

Pbko


Рег
30 Sep, 2012

Тем
92

Постов
200

Баллов
680
  • 18, May 2024
  • #2
Ну... Вы вообще не используете заголовок From:, поэтому я бы предложил добавить его вместе с адресом электронной почты, с которого вы хотите отправить сообщение.

Кроме того, вы используете довольно много регулярных выражений, чтобы получить электронную почту - в php есть функция FILTER, которая может сделать это за вас.
 

RitaDyatlova


Рег
01 Jan, 2011

Тем
72

Постов
176

Баллов
556
  • 13, Jun 2024
  • #4
Спасибо за ваш ответ. Можете ли вы помочь мне или помочь написать код заголовка. Потому что я очень плохо понимаю заголовок. Буду признателен, если вы вставите сюда код заголовка, чтобы я мог использовать его правильно.
 

Demon4ik


Рег
30 Dec, 2010

Тем
83

Постов
194

Баллов
649
Тем
403,760
Комментарии
400,028
Опыт
2,418,908

Интересно