• Почему появляется ошибка "Uncaught (in promise) SyntaxError: Unexpected end of JSON input"?

    @ChipiLina Автор вопроса
    ThunderCat, ещё раз здравствуйте. Целый день сегодня сижу и пытаюсь исправить ошибки. Исправляю одну, появляется другая. Можно вас попросить ещё раз посмотреть, что не так. Вы оказались правы, ошибка появляется действительно из php.
    Ошибка следующая:

    Fatal error: Uncaught Error: Call to a member function isSMTP() on null in /home/a/akonuhl6/akonuhl6.beget.tech/public_html/sendmail.php:14
    Stack trace:
    #0 {main}
    thrown in /home/a/akonuhl6/akonuhl6.beget.tech/public_html/sendmail.php on line 14


    PHP
    use PHPMailer\PHPMailer\PHPMailer;
    		use PHPMailer\PHPMailer\Exception;
    		use PHPMailer\PHPMailer\SMTP;
    	
    		require_once 'phpmailer/src/Exception.php';
    		require_once 'phpmailer/src/PHPMailer.php';
    		require_once "phpmailer/src/SMTP.php";
    
        $mail->isSMTP();                       
        $mail->Host       = 'smtp.yandex.com';          
        $mail->SMTPAuth   = true;                             
        $mail->Username   = 'example1@yandex.ru';                 
        $mail->Password   = 'pass';       
        $mail->SMTPSecure = 'ssl';                       
        $mail->Port       = 465;                     
    
    	$mail = new PHPMailer(true);
    	$mail->CharSet = 'UTF-8';
    	$mail->setLanguage('ru', 'phpmailer/language/');
    	$mail->IsHTML(true);
    	$mail->addAddress('example@yandex.ru');
    
    	$user_email = $_POST['email'];
    	$user_question = $_POST['question'];
    
    	//Тема письма
    	$mail->Subject = 'Поступил вопрос с сайта';
    
    	//Тело письма
    	$body = '<h1>Вам пришёл вопросr</h1>';
    	
    	if(trim(!empty($_POST['email']))){
    		$body.='<p><strong>E-mail:</strong> '.$user_email.'</p>';
    	}
    	if(trim(!empty($_POST['question']))){
    		$body.='<p><strong>Вопрос:</strong> '.$user_question.'</p>';
    	}
    
    	$mail->Body = $body;
    
    	$response = ['message' => $message];
    	//Отправляем
    	if (!$mail->send()) {
    		$message = 'Ошибка';
    	} else {
    		$message = 'Данные отправлены!';
    	}
    
    	header('Content-type: application/json');
    	echo json_encode($response);
  • Почему появляется ошибка "Uncaught (in promise) SyntaxError: Unexpected end of JSON input"?

    @ChipiLina Автор вопроса
    ThunderCat, я не стала писать полностью код, потому что иногда советуют писать только самую суть. Вот здесь оставшиеся строчки кода
    $mail = new PHPMailer(true);
    	$mail->CharSet = 'UTF-8';
    	$mail->setLanguage('ru', 'phpmailer/language/');
    	$mail->IsHTML(true);
    
    	//От кого письмо
    	$mail->setFrom('example@mail.ru');
    	//Кому отправить
    	$mail->addAddress('example1@mail.ru');
    	//Тема письма
    	$mail->Subject = 'Поступил вопрос';
    
    	//Тело письма
    	$body = '<h1>Вам пришёл вопрос с сайта</h1>';
    	
    	if(trim(!empty($_POST['email']))){
    		$body.='<p><strong>E-mail:</strong> '.$_POST['email'].'</p>';
    	}
    	if(trim(!empty($_POST['question']))){
    		$body.='<p><strong>Вопрос:</strong> '.$_POST['question'].'</p>';
    	}
  • Почему появляется ошибка "Uncaught (in promise) SyntaxError: Unexpected end of JSON input"?

    @ChipiLina Автор вопроса
    Если я правильно Вас поняла, то в headers->form data написано, что данные отправляются, но во вкладке Response ничего нет.