我正在建立一个网站,我想设置一个联系电子邮件表格。这样的事情:contact email form image
我知道这段代码会这样做吗? 但是当我点击提交按钮时没有任何反应。 我之前从未使用过PHP,所以我不知道我做错了什么。
<?php
if(isset($_POST['submit'])){
$to = "mecinoart@hotmail.com"; // this is your Email address
$from = $_POST['email']; // this is the sender's Email address
$first_name = $_POST['first_name'];
$subject = "Form submission";
$subject2 = "Copy of your form submission";
$message = $first_name . " " . $last_name . " wrote the following:" . "\n\n" . $_POST['message'];
$message2 = "Here is a copy of your message " . $first_name . "\n\n" . $_POST['message'];
$headers = "From:" . $from;
$headers2 = "From:" . $to;
mail($to,$subject,$message,$headers);
mail($from,$subject2,$message2,$headers2); // sends a copy of the message to the sender
}
?>
<!DOCTYPE html>
<head>
<title>Form submission</title>
</head>
<style>
#from{
font-weight: bold;
font-family: Trajan Pro;
font-size: 14px;
color: #66441c;
}
.input{
outline: none;
margin: 5px 0 10px 0;
padding-left: 10px;
width: 230px;
height: 35px;
font-family: Adobe Garamond Pro;
font-size: 14px;
color: #A4A4A4;
border-radius: 5px;
border: 1px solid #a37f4f;
}
textarea {
padding-top: 10px;
}
#message{
outline: none;
margin: 5px 0 10px 0;
padding-left: 10px;
width: 230px;
height: 60px;
font-family: Adobe Garamond Pro;
font-size: 14px;
color: #A4A4A4;
border-radius: 5px;
border: 1px solid #a37f4f;
}
#button{
margin-top: -10px;
border: none;
outline: none;
border-radius: 5px;
width: 230px;
height: 35px;
font-family: Trajan Pro;
font-size: 14px;
color: #fff;
background-color: #a37f4f;
}
#button:hover {
background-color: #401b0f;
color: #a37f4f;
}
</style>
<body>
<form id="from" action="" method="post">
Name <input class="input" type="text" name="first_name"><br>
Email <input class="input" type="text" name="email"><br>
Message <br><textarea id="message" rows="5" name="message" cols="30"></textarea><br>
<input id="button" type="submit" name="submit" value="Submit">
</form>
</body>
</html>
答案 0 :(得分:0)
尝试检查电子邮件是否已发送。
<? php
if (isset($_POST['submit'])) {
$to = "mecinoart@hotmail.com"; // this is your Email address
$from = $_POST['email']; // this is the sender's Email address
$first_name = $_POST['first_name'];
$subject = "Form submission";
$subject2 = "Copy of your form submission";
$message = $first_name.
" ".$last_name.
" wrote the following:".
"\n\n".$_POST['message'];
$message2 = "Here is a copy of your message ".$first_name.
"\n\n".$_POST['message'];
$headers = "From:".$from;
$headers2 = "From:".$to;
$email1 = mail($to, $subject, $message, $headers);
$email2 = mail($from, $subject2, $message2, $headers2); // sends a copy of the message to the sender
}
if ($email1) {// checking if email 1 is sent
echo "Email 1 is sent";
} else {
echo "Email 1 is not sent";
}
if ($email2) {//checking if email 2 is sent
echo "Email 2 is sent";
} else {
echo "Email 2 is not sent";
} ?>
将其添加到您的表单属性中。
action="<?php echo $_SERVER['PHP_SELF']; ?>"
例如:<form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
答案 1 :(得分:0)
您的表单的action
和onsubmit
属性为空,因此表单信息永远不会在任何地方提交。您需要指定将表单内容发送到哪个页面(使用action="..."
)或指定要执行的javascript函数(使用onsubmit="..."
) ,否则当您点击Submit
按钮时不会发生任何事情。
答案 2 :(得分:0)
我有类似的问题
我在form Tag
action="<?php echo $_SERVER['PHP_SELF']; ?>"
答案 3 :(得分:0)
为什么使用$last_name
?删除它或添加一个新的姓氏文本框。