Я действительно новичок в этой области. Я работаю над своим портфолио. Я сделал модальную контактную форму (бутстрап) для «свяжитесь со мной». Я не получаю письма на свой аккаунт Gmail от php. Я использую PHP Mailer и следующий код моего PHP с именем файла контакт-form.php:
<?php
// check for form submission - if it doesn't exist then send back to contact form**
if (!isset($_POST['submit'])) {
$message=
'Name: '.$_POST['name'].'<br />
Email: '.$_POST['email'].'<br />
Message: '.$_POST['contact-message'];
require "phpmailer/class.phpmailer.php"; //include phpmailer class
// Instantiate Class
$mail = new PHPMailer();
// Set up SMTP
$mail->IsSMTP(); // Set up SMTP connection
$mail->SMTPAuth = true; // Connection with SMTP does require authorization
$mail->SMTPSecure = "ssl"; // Connect using a TLS connection
$mail->Host ="smtp.gmail.com"; //Gmail SMTP address
$mail->Port = 465; // Gmail SMTP port No idea what this is suppose to be
$mail->Encoding ='7bit';
$mail->Username = "[email protected]"; // Gmail address
$mail->Password ="Password"; // Gmail Password
// Compose
$mail->SetFrom($_POST['email'],$_POST['name']);
$mail->AddReplyTo($_POST['email'],$_POST['name']);
$mail->Subject = "Mail from Portfolio";
$mail->MsgHTML($message);
//Send To
$mail->AddAddress("[email protected]", "Recipient Name");
$result = $mail->Send();
$message = $result ? 'Successfully Sent!' : 'Sending Failed';
unset($mail);
}
Я связал все мои HTML-страницы с контакт-form.php как:
<form action="contactform.php" class="form-horizontal" method="post" enctype="text/plain">
Когда я нажимаю кнопку отправки сообщения, она направляет меня в contact-form.php, но ничего не происходит.
Пожалуйста, помогите мне, я застрял в этом вопросе с прошлой недели.
Любое предложение или помощь будут весьма заметны.
Заранее спасибо 🙂
Tayyaba.
я ценю ваш код, который вы применили, поскольку отладку кода сложно, было бы лучше, если бы вы тестировали код со статической информацией,
я дал рабочий пример ниже:
$email = new PHPMailer();
$email->From = '[email protected]';
$email->FromName = 'Amrinder Singh';
$email->Subject = 'Hello';
$email->Body = "How are you karan";
$email->AddAddress( '[email protected]' );
$email->AddAttachment( 'PATH_OF_YOUR_FILE_HERE' , 'NameOfFile.pdf' ); //optional
return $email->Send();
Я надеюсь, что это поможет вам. пожалуйста, продолжайте с этим …
Спасибо… 🙂
Прежде всего, я предлагаю вам начать снова с помощью заведомо хороший пример для отправки через gmail и убедитесь, что вы используете последнюю версию PHPMailer. Что касается вашего сценария, эта строка означает, что ваш код обработки почты будет выполняться только тогда, когда форма не отправлено, и так как это приведет к отправке ошибок, которые вы не показываете, вы ничего не увидите!
if (!isset($_POST['submit'])) {
Это должно быть:
if (isset($_POST['submit'])) {