• Как передавать значение чекбоксов и выбранных файлов на почту?

    @Dillett Автор вопроса
    Начинающий web разработчик
    Я тут немного подшаманил, в итоге приходит массив данных из чекбоксов, но отельным письмом. Как его собрать в одно письмо и добавить отправку выбранных файлов?
    <?php
    
    $method = $_SERVER['REQUEST_METHOD'];
    
    //Script Foreach
    $c = true;
    if ( $method === 'POST' ) {
    
    	$project_name = trim($_POST["project_name"]);
    	$admin_email  = trim($_POST["admin_email"]);
    	$form_subject = trim($_POST["form_subject"]);
    	$user_Email = "lalalala@mail.ru";
        
        
        $chosen = is_array($_POST['choice']) ? $_POST['choice'] : array();
        $chosen = implode (', ', $chosen );
    
        $headers  = "Content-type: text/plain; charset=utf-8 \r\n";
        $headers .= 'From: '.$user_Email.'' . "\r\n" .
        'Reply-To: '.$user_Email.'' . "\r\n" .
        'X-Mailer: PHP/' . phpversion();
    
        $body = "Услуги: ".$chosen;
        $mail = mail($admin_email, $form_subject, $body, $headers);
    
        if($mail){
        	echo '$body: <br>'.$body;
    	    echo '<br><br> $to:<br>'.$admin_email;
        }
    
    
    	foreach ( $_POST as $key => $value ) {
    		if ( $value != "" && $key != "project_name" && $key != "admin_email" && $key != "form_subject" && $key != "choice") {
    			$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"]);
    	$admin_email  = trim($_GET["admin_email"]);
    	$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>";
    
    function adopt($text) {
    	return '=?UTF-8?B?'.Base64_encode($text).'?=';
    }
    
    $headers = "MIME-Version: 1.0" . PHP_EOL .
    "Content-Type: text/html; charset=utf-8" . PHP_EOL .
    'From: '.adopt($project_name).' <'.$admin_email.'>' . PHP_EOL .
    'Reply-To: '.$admin_email.'' . PHP_EOL;
    
    mail($admin_email, adopt($form_subject), $message, $headers);
    Ответ написан