Именно это решение, которое я придумал для контактной формы.
Я столкнулся с проблема. После попытки отправить электронное письмо, чтобы проверить, работает ли сервер, консоль возвращает: POST http://localhost:3000/server.php 404 (не найден)
И я проверил путь к моему файлу server.php, так что я действительно не знаю, в чем проблема.
Я ищу уже несколько часов и не могу найти решение..
Любое помощь будет очень признательна.
Вот мой компонент формы:
Код: Выделить всё
import React, { useState } from 'react';
function ContactForm() {
const [formData, setFormData] = useState({
name: '',
email: '',
subject: '',
message: ''
});
const handleChange = (e) => {
const { name, value } = e.target;
setFormData(prevState => ({
...prevState,
[name]: value
}));
};
const handleSubmit = async (e) => {
e.preventDefault();
try {
const response = await fetch('./server.php', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
body: JSON.stringify(formData),
});
if (response.ok) {
alert('Email sent successfully!');
// You can redirect the user or perform any other action here
} else {
alert('Error sending email!');
}
} catch (error) {
console.error('Error sending email:', error);
alert('Error sending email!');
}
};
return (
Name:
Email:
Subject:
Message:
Send
);
}
export default ContactForm;
Код: Выделить всё
Код: Выделить всё
(the Form component is located at: src/assets/Components/Form.js)
(server.php is in the public folder)
(phpmailer directory is in the src dir.)

Я пробовал менять пути и проверять версии Apache, также проверил несколько руководств, но ничего не помогло.
Подробнее здесь: https://stackoverflow.com/questions/782 ... -react-app
Мобильная версия