Как заставить мою контактную форму HTML + JS отправлять мне электронное письмо с помощью функции phpmailer()?Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Как заставить мою контактную форму HTML + JS отправлять мне электронное письмо с помощью функции phpmailer()?

Сообщение Anonymous »

Я новичок в мире разработки и только начал изучать JavaScript, HTML и CSS. Я создал веб-сайт с нуля, используя в качестве руководства некоторые классы, однако классы только показывают, как создать внешний вид формы, а не заставляют ее отправлять мне электронные письма.
Но я Я запустил веб-сайт и очень хочу, чтобы эта форма работала. Я знаю, что могу использовать для этого phpmailer(), однако все коды, которые я тестировал до сих пор, не работают должным образом. Я практически ничего не знаю о PHP, поэтому мне очень сложно устранить эту неполадку.
Я уже установил phpmailer() на свой хостинг, протестировал его, и он работает, но однажды Я пытаюсь включить это в код сайта, не получается.
Это HTML-код формы:

Код: Выделить всё

 


[img]assets\contact_image.png[/img]

Contato
Vamos conversar?
Preencha o formulário e entrarei em contato o mais rápido possível.  









Enviar mensagem




В форме используется проверка Javascript, которая может иметь значение, поэтому вот полный код:

Код: Выделить всё

//Conectando todos os campos para diminuir o tamanho do código
var fields = {};

document.addEventListener("DOMContentLoaded", function() {
fields.nome = document.getElementById('nome');
fields.email = document.getElementById('email');
fields.assunto = document.getElementById('assunto');
fields.mensagem = document.getElementById('mensagem');

Object.values(fields).forEach(field => {
field.addEventListener('input', toggleButton);
});

toggleButton();
})

//Verificando os campos
function checkFields() {
var nome = fields.nome.value.trim();
var email = fields.email.value.trim();
var assunto = fields.assunto.value.trim();
var mensagem = fields.mensagem.value.trim();

return nome !== '' && email !== '' && assunto !== '' && mensagem !== '';
}

function isNotEmpty(value) {
if (value == null || typeof value == 'undefined' ) return false;
return (value.length > 0);
}
function isEmail(email) {
let regex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*\.[a-zA-Z]{2,}$/;
return regex.test(String(email).toLowerCase());
}
function fieldValidation(field, validationFunction, errorMessage, ...args) {
if (field == null) return false;

let isFieldValid = validationFunction(field.value, ...args);
if (!isFieldValid) {
field.style.color = 'red';
document.getElementById(field.id + "-error").textContent = errorMessage;
} else {
field.style.color = '';
document.getElementById(field.id + "-error").textContent = '';
}

return isFieldValid;
}

function maxLength(value, maxLength) {
return value.trim().length 




Contact form


Do You Have Anything in Mind?


Name: 

Email: 

Message: 





Проблема в том, что мне очень хотелось сделать кнопку из формы для отправки письма напрямую в мой почтовый ящик, без необходимости создавать только для этого новую страницу. Другими словами, я хочу адаптировать PHP-код, чтобы он работал вместе с моим текущим кодом в уже существующей форме, ничего не нарушая.
Я пытался использовать базовый PHP-скрипт, хостинг дал мне на пробу и все заработало. Но когда я попытался включить его в свой код, PHP перестал работать. Я думаю, что проблема может быть связана с моим HTML, поскольку я использую разные классы и идентификаторы, а мой HTML-код более сложен, чем код, предоставленный хостингом.
Я попробовал внести небольшие изменения в скрипт PHP, чтобы он соответствовал классам из моего кода, но как только я это сделал, PHP перестал работать. Сообщений об ошибках нет (даже при включенном display_erros), но электронные письма не отправляются.
Я думаю, что в моем HTML также отсутствует информация для связи с PHP-кодом, но я не знаю как связать их, не нарушая код.
И я беспокоюсь, что проверка JavaScript может вызывать проблемы и с PHP, и я понятия не имею, что нужно адаптировать.
Я много искал в Интернете, но не смог исправить. Я знаю, что phpmailer() не удобен для новичков, поэтому это имеет смысл. Но я хочу попробовать с некоторой помощью, возможно, у меня получится, ха-ха
Я потратил часы на чтение других сообщений здесь и поиск в Google (и даже в чате), но на самом деле ничего не решилось мой случай.
Можете ли вы рассказать мне, что изменить в кодах, чтобы это произошло?
Если кто-нибудь может мне помочь, я буду очень благодарен!
Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/784 ... er-functio
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Php — «Неопределенный тип PHPMailer\PHPMailer\PHPMailer».intelephense(1009)» в vscode
    Anonymous » » в форуме Php
    0 Ответы
    47 Просмотры
    Последнее сообщение Anonymous
  • Я пытаюсь отправить электронное письмо с помощью PHPMailer через SMTP, но постоянно сталкиваюсь с проблемами аутентифика
    Anonymous » » в форуме Php
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • PHPMailer отправляет электронное письмо дважды
    Гость » » в форуме Php
    0 Ответы
    26 Просмотры
    Последнее сообщение Гость
  • Ошибка: PHPMailer не отправляет электронное письмо с несколькими вложениями.
    Anonymous » » в форуме Php
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Почему PHPMailer не отправляет электронное письмо на InfinityFree?
    Anonymous » » в форуме Php
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»