Форма с PHPMailer - PullRequest
       33

Форма с PHPMailer

0 голосов
/ 04 мая 2020

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

ps: если я отправлю электронное письмо без вложенного файла, письмо не будет доставлено в почтовый ящик.

Попытка получить доступ к смещению массива по значению типа null в /Applications/MAMP/htdocs/deneuve/index.php в строке 34

Неопределенный индекс: вложение в / Applications / MAMP / htdocs / deneuve / index. php в строке 40

Попытка получить доступ к смещению массива по значению типа null в /Applications/MAMP/htdocs/deneuve/index.php в строке 40

<?php


    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;

    session_start();


    $msg = "";

    if(isset($_POST['submit'])){

        require 'PHPMailer/src/Exception.php';
        require 'PHPMailer/src/PHPMailer.php';
        //require 'PHPMailer/src/SMTP.php';

        function sendEmail($to, $from, $fromName, $body, $attachment){
            $mail = new PHPMailer();
            $mail->setFrom($from, $fromName);
            $mail->addAdress($to);
            $mail->addAttachment($attachment);
            $mail->Subject = 'Contact Form - Email';
            $mail->Body = $body;
            $mail->isHTML(false);

            return $mail-> send();
        }

        $name = $_POST['name'];
        $email = $_POST['email'];
        $body = $_POST['body'];
        $file = $_POST['attachment'];
        $file = "attachment/" . basename($_FILES['attachment']['name']);

        echo '<pre>';
        print_r($_FILES);


        if(move_uploaded_file($_FILES['attachment']['tmp_name'], $file)){
            if(sendEmail('******@gmail.com', $email, $name, $body, $file)){
                $msg = 'email sent ! :D';}
                else {$msg = 'email failed ! :(';}
        } else{ 
            $msg = "<p style='color:white;'>please check your attachment</p>";
        }

    }

?>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" type="text/css" href="styleform.css">
    <title>Document</title>
</head>
<body>
    <div id="content-form">

        <form action="index.php" method="POST" entype="multipart/form-data">

            <input type="text" name="name" id="name" placeholder="Name" required>
            <input type="email" name="email" id="email" placeholder="Email" required>
            <textarea name="body" id="body" cols="30" rows="10" placeholder="Send us a message" required></textarea>
            <input type="file" name="attachment">
            <button type="submit" value="Enviar Datos" name="submit">SUBMIT !</button>

        </form>

        <?php echo $msg; ?>
    </div>

</body>
</html>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...