Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.
Внимание! Некоторое время письма не доходят до аккаунтов MAIL RU GROUP, не доходят на все почтовые ящики mail.ru, inbox.ru, bk.ru. Пишите им жалобы, чтобы быстрее восстановили получение писем, регистрируйтесь через яндекс почту и gmail, туда письма с активизацией доходят.

Вернуться   Форум программистов > Web > HTML и CSS
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 20.11.2018, 14:45   #1
dimamed
Новичок
 
Регистрация: 20.11.2018
Сообщений: 1
Репутация: 10
По умолчанию Помогите с формой обратной связи

Помогите разобраться, почему письма не приходят на электронный адрес указаный в коде.
Форма со стоковой лендинг-странички.

Код из index.html

Цитата:
Код:

<div class="row">
                    <div class="col-xs-12 col-md-8">
                        <div class="contact-form">
                            <form action="process.php" id="contact-form" method="post">
                                <div class="form-double">
                                    <input type="text" id="form-name" name="form-name" placeholder="Ваше имя" required="required">
                                    <input type="number" placeholder="Номер телефону">
                                </div>
                                <div class="form-double">
                                    <input type="email" name="form-email" name="email" id="form-email" placeholder="Электронная почта" required="required">
                                    <input type="text" name="form-subject" id="form-subject" placeholder="Тема" required="required">
                                </div>
                                <textarea name="form-message" id="message" id="form-message" rows="5" required="required" placeholder="Текст сообщения"></textarea>
                                <button class="bttn bttn-primary">Надіслати</button>
                            </form>
                        </div>
                    </div>

Код из process.php

Цитата:
Код:

<?php
// Configure your Subject Prefix and Recipient here
$subjectPrefix = '[Contact via website]';
$emailTo       = 'моя_почта@bigmir.net';
$errors = array(); // array to hold validation errors
$data   = array(); // array to pass back data
if($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name    = stripslashes(trim($_POST['name']));
    $email   = stripslashes(trim($_POST['email']));
    $subject = stripslashes(trim($_POST['subject']));
    $message = stripslashes(trim($_POST['message']));
    if (empty($name)) {
        $errors['name'] = 'Name is required.';
    }
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $errors['email'] = 'Email is invalid.';
    }
    if (empty($subject)) {
        $errors['subject'] = 'Subject is required.';
    }
    if (empty($message)) {
        $errors['message'] = 'Message is required.';
    }
    // if there are any errors in our errors array, return a success boolean or false
    if (!empty($errors)) {
        $data['success'] = false;
        $data['errors']  = $errors;
    } else {
        $subject = "$subjectPrefix $subject";
        $body    = '
            <strong>Name: </strong>'.$name.'<br />
            <strong>Email: </strong>'.$email.'<br />
            <strong>Message: </strong>'.nl2br($message).'<br />
        ';
        $headers  = "MIME-Version: 1.1" . PHP_EOL;
        $headers .= "Content-type: text/html; charset=utf-8" . PHP_EOL;
        $headers .= "Content-Transfer-Encoding: 8bit" . PHP_EOL;
        $headers .= "Date: " . date('r', $_SERVER['REQUEST_TIME']) . PHP_EOL;
        $headers .= "Message-ID: <" . $_SERVER['REQUEST_TIME'] . md5($_SERVER['REQUEST_TIME']) . '@' . $_SERVER['SERVER_NAME'] . '>' . PHP_EOL;
        $headers .= "From: " . "=?UTF-8?B?".base64_encode($name)."?=" . "<$email>" . PHP_EOL;
        $headers .= "Return-Path: $emailTo" . PHP_EOL;
        $headers .= "Reply-To: $email" . PHP_EOL;
        $headers .= "X-Mailer: PHP/". phpversion() . PHP_EOL;
        $headers .= "X-Originating-IP: " . $_SERVER['SERVER_ADDR'] . PHP_EOL;
        mail($emailTo, "=?utf-8?B?" . base64_encode($subject) . "?=", $body, $headers);
        $data['success'] = true;
        $data['message'] = 'Поздравляю! Ваше сообщение отправлено успешно.';
    }
    // return all our data to an AJAX call
    echo json_encode($data);
}

Код из contact-form.js

Цитата:
Код:

/*
--------------------------------
Ajax Contact Form
--------------------------------
+ https://github.com/mehedidb/Ajax_Contact_Form
+ A Simple Ajax Contact Form developed in PHP with HTML5 Form validation.
+ Has a fallback in jQuery for browsers that do not support HTML5 form validation.
+ version 1.0.1
+ Copyright 2016 Mehedi Hasan Nahid
+ Licensed under the MIT license
+ https://github.com/mehedidb/Ajax_Contact_Form
*/

(function ($, window, document, undefined) {
    'use strict';

    var $form = $('#contact-form');

    $form.submit(function (e) {
        // remove the error class
        $('.form-group').removeClass('has-error');
        $('.help-block').remove();

        // get the form data
        var formData = {
            'name' : $('input[name="form-name"]').val(),
            'email' : $('input[name="form-email"]').val(),
            'subject' : $('input[name="form-subject"]').val(),
            'message' : $('textarea[name="form-message"]').val()
        };

        // process the form
        $.ajax({
            type : 'POST',
            url  : 'process.php',
            data : formData,
            dataType : 'json',
            encode : true
        }).done(function (data) {
            // handle errors
            if (!data.success) {
                if (data.errors.name) {
                    $('#name-field').addClass('has-error');
                    $('#name-field').find('.col-lg-10').append('<span class="help-block">' + data.errors.name + '</span>');
                }

                if (data.errors.email) {
                    $('#email-field').addClass('has-error');
                    $('#email-field').find('.col-lg-10').append('<span class="help-block">' + data.errors.email + '</span>');
                }

                if (data.errors.subject) {
                    $('#subject-field').addClass('has-error');
                    $('#subject-field').find('.col-lg-10').append('<span class="help-block">' + data.errors.subject + '</span>');
                }

                if (data.errors.message) {
                    $('#message-field').addClass('has-error');
                    $('#message-field').find('.col-lg-10').append('<span class="help-block">' + data.errors.message + '</span>');
                }
            } else {
                // display success message
                $form.html('<div class="alert alert-success">' + data.message + '</div>');
            }
        }).fail(function (data) {
            // for debug
            console.log(data)
        });

        e.preventDefault();
    });
}(jQuery, window, document));

После заполнения формы сообщение про успешную отправку отображается, а само сообщение не приходит. У хостера услуга отправки email включена.

Последний раз редактировалось dimamed; 20.11.2018 в 14:48.
dimamed вне форума   Ответить с цитированием
Старый 28.11.2018, 01:46   #2
GrayBill
Новичок
 
Регистрация: 28.11.2018
Сообщений: 1
Репутация: 10
По умолчанию

Давно на бесплатном хостинге был сайт, и были аналогичные проблемы. Но так как скрипт пересылки на почту предоставлялся хостером, то он считался надёжным и все ошибки надо было искать в форме.

Попробуйте проверить отправку письма просто запустив скрипт без формы.
Или используйте какой-нибудь отдельный сервис пересылки форм на почту.
GrayBill вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разобраться с формой обратной связи! NastyaKor JavaScript, Ajax 12 30.08.2016 14:48
Помогите с формой обратной связи bonuscity Помощь студентам 2 12.03.2016 18:47
Проблема с формой обратной связи. Серега82 PHP 2 10.09.2014 22:36
проблема с формой обратной связи.. Shaman-King PHP 4 22.02.2013 04:26
нужен скрипт для работы с формой обратной связи natas12345 Фриланс 2 07.09.2012 10:07


02:15.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru