Поддержка Проблемы и решения Пустые письма от сайта

Просмотр 4 ответов — с 1 по 4 (всего 4)
  • Желательно подробнее расписать про то, что использовали для создания форм, иначе никто не поможет.

    <?php
    
    header('Content-Type: text/html; charset=utf-8');
    
    $method = $_SERVER['REQUEST_METHOD'];
    
    //Script Foreach
    
    $c = true;
    
    if ( $method === 'POST' ) {
    
        $project_name = "tAdena";
    
        $admin_email  = "support@adenasrvc.ru";
    
        $form_subject = trim($_POST["form_subject"]);
    
        foreach ( $_POST as $key => $value ) {
    
            if ($key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
    
                $message .= "
    
                " . ( ($c = !$c) ? '<tr>':'<tr style="background-color: #f8f8f8;">' ) . "
    
                <td style='padding: 10px; border: #e9e9e9 1px solid;'><b>$key</b></td>
    
                <td style='padding: 10px; border: #e9e9e9 1px solid;'>$value</td>
    
                </tr>
    
                ";
    
            }
    
        }
    
    }
    
    else if ( $method === 'GET' ) {
    
        $project_name = trim($_GET["project_name"]);
    if (isset($_GET["admin_email"])){
        $admin_email = trim($_GET["admin_email"]);
    } else {
        $admin_email = "support@adenasrvc.ru";
    }
        $form_subject = trim($_GET["form_subject"]);
    
        foreach ( $_GET as $key => $value ) {
    
            if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" ) {
    
                $message .= "
    
                " . ( ($c = !$c) ? '<tr>':'<tr style="background-color: #f8f8f8;">' ) . "
    
                <td style='padding: 10px; border: #e9e9e9 1px solid;'><b>$key</b></td>
    
                <td style='padding: 10px; border: #e9e9e9 1px solid;'>$value</td>
    
                </tr>
    
                ";
    
            }
    
        }
    
    }
    
    $message = "<table style='width: 100%;'>$message</table>";
    
    mail($admin_email, $form_subject, $message, "From: $project_name <$admin_email>" . "\r\n" . "Reply-To: $admin_email" . "\r\n" . "X-Mailer: PHP/" . phpversion() . "\r\n" . "Content-type: text/html; charset=\"utf-8\"");

    Приведенный код — это какая-то кустарная самоделка? Почему бы не использовать нормальные плагины для контактных форм?
    https://ru.wordpress.org/plugins/search/contact+form/
    Или живем по принципу «Создать себе проблемы, чтобы потом их героически преодолевать?»

    • Ответ изменён 2 нед., 1 день назад пользователем  Spectrum.
    Модератор Sergey Biryukov

    (@sergeybiryukov)

    Live and Learn

    Из-за чего это может быть?

    Например, из-за того, что перед вызовом функции mail() нет никаких проверок, т.е. письмо отправляется в любом случае, даже если ни одно значение не заполнено.

Просмотр 4 ответов — с 1 по 4 (всего 4)