Задать вопрос
gbreadman13
@gbreadman13
Фронтенд-кодер из Красноярска

Как подключить PHPMailer к opencart?

Добрый день. На сайте есть форма обратной связи.
<div class="sale">
                    <h1>Вы у нас первый раз? Вам скидка 20%!</h1>
                    <b><form action="catalog/view/theme/marvi/html/php/mail.php" method="POST"></b>
                        <div class="row">                        
                            <div class="user-info col-12 col-lg-8">
                                <div class="row">
                                    <div class="col-lg-6">
                                    <input type="text" name="user_name" id="" placeholder="Ваше имя">
                                </div>
                                <div class="col-lg-6">
                                    <input type="text" name="user_phone" id="phone" placeholder="+7 (___) ___-__-__">                            
                                </div>
                                </div>
                            </div>
                            <div class="col-12 col-lg-4">
                                <input type="submit" value="ПОЛУЧИТЬ СКИДКУ">
                            </div>
                        </div>
                    </form>
                    <p class="privacy">Нажимая на кнопку...</a></p>
                </div>

Эта форма отсылает к файлу mail.php.
<?php 

require_once('catalog/view/theme/marvi/html/phpmailer/PHPMailerAutoload.php');
$mail = new PHPMailer;
$mail->CharSet = 'utf-8';

$name = $_POST['user_name'];
$phone = $_POST['user_phone'];

//$mail->SMTPDebug = 3;                               // Enable verbose debug output

$mail->isSMTP();                                      // Set mailer to use SMTP
$mail->Host = 'mail.nic.ru';  																							// Specify main and backup SMTP servers
$mail->SMTPAuth = true;                               // Enable SMTP authentication
$mail->Username = '******'; // Ваш логин от почты с которой будут отправляться письма
$mail->Password = '******'; // Ваш пароль от почты с которой будут отправляться письма
$mail->SMTPSecure = 'ssl';                            // Enable TLS encryption, `ssl` also accepted
$mail->Port = 465; // TCP port to connect to / этот порт может отличаться у других провайдеров

$mail->setFrom('******'); // от кого будет уходить письмо?
$mail->addAddress('******');     // Кому будет уходить письмо 

$mail->isHTML(true);                                  // Set email format to HTML

$mail->Subject = 'Заявка на скидку с сайта';
$mail->Body    = '' .$name . ' оставил(а) заявку, телефон - ' .$phone;
$mail->AltBody = '';

// if(!$mail->send()) {
//     echo 'Error';
// } else {
//     header('location: thank-you.html');
// }
// ?>

Однако при клике на кнопку "Получить скидку", переводит на страницу вида sitename/mail.php и естественно, не находит такой страницы.
5ee85e1b834e6631613978.png

Я подозреваю, что проблема в путях к mail.php и самому PHPMailer, Но если так, то не могу понять, как их верно прописать. А если не в этом, то не знаю в чем проблема.
  • Вопрос задан
  • 592 просмотра
Подписаться 2 Простой 3 комментария
Пригласить эксперта
Ответы на вопрос 1
@amfetamine
подключаете класс как и все остальные классы , и реализуете функционал через контроллер.
Сама проблема в роутинге скорее всего
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы