Как создать форму электронной почты, которая может отправлять электронную почту с помощью html
Я знаю, что много примеров, использующих mailto: post action для отправки писем с использованием только html-формы.
Но с помощью этого на самом деле появится всплывающее диалоговое окно отправки электронной почты, например. outlook, и на самом деле он использует наш собственный SMTP-сервер для отправки электронной почты.
Можно ли создать html-форму, которая просто отправит электронное письмо после отправки?
например. если использование другого javascript api может добиться эффекта? например, например. node.js?
Может ли кто-нибудь предоставить некоторые образцы кода?
Ответы
Ответ 1
Как говорили другие, вы не можете.
Вы можете найти хорошие примеры форм HTML-php в Интернете, здесь очень полезная ссылка, которая объединяет HTML с javascript для проверки и php для отправки электронной почты.
Пожалуйста, проверьте полную статью (включая пример zip) в источнике:
http://www.html-form-guide.com/contact-form/php-email-contact-form.html
HTML:
<form method="post" name="contact_form"
action="contact-form-handler.php">
Your Name:
<input type="text" name="name">
Email Address:
<input type="text" name="email">
Message:
<textarea name="message"></textarea>
<input type="submit" value="Submit">
</form>
JS:
<script language="JavaScript">
var frmvalidator = new Validator("contactform");
frmvalidator.addValidation("name","req","Please provide your name");
frmvalidator.addValidation("email","req","Please provide your email");
frmvalidator.addValidation("email","email",
"Please enter a valid email address");
</script>
PHP:
<?php
$errors = '';
$myemail = '[email protected]';//<-----Put Your email address here.
if(empty($_POST['name']) ||
empty($_POST['email']) ||
empty($_POST['message']))
{
$errors .= "\n Error: all fields are required";
}
$name = $_POST['name'];
$email_address = $_POST['email'];
$message = $_POST['message'];
if (!preg_match(
"/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/i",
$email_address))
{
$errors .= "\n Error: Invalid email address";
}
if( empty($errors))
{
$to = $myemail;
$email_subject = "Contact form submission: $name";
$email_body = "You have received a new message. ".
" Here are the details:\n Name: $name \n ".
"Email: $email_address\n Message \n $message";
$headers = "From: $myemail\n";
$headers .= "Reply-To: $email_address";
mail($to,$email_subject,$email_body,$headers);
//redirect to the 'thank you' page
header('Location: contact-form-thank-you.html');
}
?>
Ответ 2
Вы не можете, единственное, что вы можете сделать с html, - открыть ваше приложение электронной почты по умолчанию. Вы должны использовать код сервера для отправки электронной почты, php, asp.net....
Ответ 3
вы можете использовать Простую форму контакта в HTML с почтовой программой PHP. Это легко реализовать на вашем сайте. Вы можете попробовать демо из следующей ссылки: Простая форма обратной связи/обратной связи в почтовой программе HTML-PHP
В противном случае вы можете посмотреть демонстрационное видео по следующей ссылке: Youtube: Простая форма обратной связи/обратной связи в почтовой программе HTML-PHP
Когда вы работаете в localhost, вы можете получить следующую ошибку:
![Warning: mail(): Failed to connect to mailserver at "smtp.gmail.com" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in S:\wamp\www\sample\mailTo.php on line 10]()
Вы можете проверить эту ссылку для получения более подробной информации: Простая форма обратной связи/обратной связи в HTML с php (почтовая программа HTML-PHP) И это скриншот HTML-формы:
![Simple Form]()
И это основное кодирование PHP:
<?php
if($_POST["submit"]) {
$recipient="[email protected]"; //Enter your mail address
$subject="Contact from Website"; //Subject
$sender=$_POST["name"];
$senderEmail=$_POST["email"];
$message=$_POST["comments"];
$mailBody="Name: $sender\nEmail Address: $senderEmail\n\nMessage: $message";
mail($recipient, $subject, $mailBody);
sleep(1);
header("Location:http://blog.antonyraphel.in/sample/"); // Set here redirect page or destination page
}
?>
Ответ 4
Html сам по себе не будет отправлять электронную почту. Для отправки электронной почты вам потребуется что-то, что подключается к SMTP-серверу. Следовательно Outlook появляется с помощью mailto: иначе ваша форма отправляется на сервер с script, который отправляет электронную почту.
Ответ 5
Вы не можете отправлять электронную почту с помощью javascript или html. Для отправки электронной почты вам понадобятся серверные скрипты в php или других технологиях.
Ответ 6
Вы не можете, HTML не может отправлять письма, вам нужен серверный язык (пример: PHP, ASP..).
Ответ 7
Другой вариант - использовать внешнюю службу, например: https://www.serverlessform.com/