HTML PHP форма отправки по электронной почте - PullRequest
0 голосов
/ 25 мая 2018

Я пытаюсь создать форму PHP, которая позволяет пользователям вставлять свой адрес электронной почты, и он автоматически отправляет мне письмо с их адресом электронной почты.что-то вроде подписки.

, что у меня пока так:мой HTML.

<?php
if(isset($_POST['email'])){
$email = $_POST['email'];
$to = 'myemail@something.com';
$subject = 'new subscriber';
$body = '<html> 
            <body>
                <p>Email:<br>'.$email.'</p>
            </body>
        </html>';
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset-utf-8";

$send = mail($to, $subject, $body, $headers);
if($send){
    echo '<br>';
    echo 'thanks';
}else{
    echo 'error';
}
}
?>

1 Ответ

0 голосов
/ 25 мая 2018

Недостаточно кода для того, чтобы я мог ответить полностью, но одна вещь, которая приходит мне в голову, не оставляет action="" пустым.Попробуйте переменную $_SERVER['PHP_SELF'], она должна напечатать путь к файлу, который запущен в данный момент, так что вы увидите ту же страницу, но с данными в $_POST, которые вы отправите.Вы можете попробовать это так:

<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
    <input type="email" name="email" placeholder="Enter your email address" /><br>
</form>

Если вы хотите отправить данные в один и тот же файл, как этот, убедитесь, что ваш код PHP находится в том же файле, что и структура HTML вашей формы.Это может упростить задачу, если вы сначала поместите свой PHP-код, поэтому вы можете exit; из файла (больше не отображать форму) сообщать пользователю, что сообщение отправлено или произошла ошибка.

...