簡體   English   中英

如何使用 php 通過郵件提交聯系表?

[英]How do I submit a contact form in mail using php?

嘿,我希望我的聯系人提交到我的 cpanel 郵件 ID 我嘗試了很多代碼,但它不起作用唯一有效的代碼是

<?php

$sender = 'bla@example.ae';
$recipient = 'bla@example.ae';

$subject = "php mail test";
$message = "You have received a new message from the user $name." .
    "Here is the message:\n $message" .
    "Here is the mail:\n $email" .
    $headers = 'From:' . $sender;
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];

if (mail($recipient, $subject, $message)) {
    echo "Message accepted";
} else {
    echo "Error: Message not accepted";
}

這是唯一的郵件,而不是其他郵件,如果有人願意發送 PHP 代碼來提交表單,那就太好了

但它只發送消息而不是其他消息

您的意思是您得到的 email 正文包含單詞(“您已收到... ”),除了namemessageemail部分是空白的嗎?

這可能是由於您的變量聲明和引用的順序。 您必須先聲明您的變量(即,為它們賦值),然后才能引用它們(即,在$message中使用它們)。

例如:

<?php

$recipient = 'bla@example.ae';
$subject = "php mail test";
$name = $_POST['name'];
$email = $_POST['email'];
$message = $_POST['message'];
$sender = 'bla@example.ae';
// I'm assuming you're going to validate, sanitize, and escape $name, $email, and $message
$message = "You have received a new message from the user {$name}.\n" .
    "Here is the mail:\n {$email}\n" .
    "Here is the message:\n {$message}";
$headers = "From: $sender";

if (mail($recipient, $subject, $message, $headers)) {
    echo "Message accepted";
} else {
    echo "Error: Message not accepted";
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM