Я испытываю проблему при попытке отправить данные на сервер, используя Ajax в JavaScript. Каждый раз, когда я пытаюсь отправить вопрос, я получаю сообщение об ошибке «не удалось отправить вопрос: ошибка». Я проверил свой код, но я не могу определить причину. < /P>
Вот код JavaScript, который я использую для отправки данных: < /p>
let questions = [];
let itemsPerPage = 10;
let currentPage = 1;
let instansiList = [];
let captchaValue = '';
// Getting DOM elements
const alertMessage = document.querySelector('.alert-message');
const containerWidth = document.querySelector('.alert-container').offsetWidth;
const messageWidth = alertMessage.offsetWidth;
let position = containerWidth;
// Function for alert message animation
function animate() {
position -= 2;
if (position < -messageWidth) {
position = containerWidth;
}
alertMessage.style.transform = `translateX(${position}px)`;
requestAnimationFrame(animate);
}
// Running animation on page load
window.onload = function() {
animate();
};
// Preventing certain actions
document.addEventListener('contextmenu', e => e.preventDefault());
document.addEventListener('copy', e => {
e.preventDefault();
alert("Copying content is not allowed.");
});
document.addEventListener('selectstart', e => e.preventDefault());
document.addEventListener('keydown', event => {
if (event.key === 'PrintScreen') {
alert('Taking screenshots is not allowed.');
}
});
// Main function when document is ready
$(document).ready(function() {
$('#submitQuestion').click(function() {
const topic = $('#topic').val();
const instansi = $('#instansiInput').val();
const nameOption = $('#nameOption').val();
const name = nameOption === 'input' ? $('#name').val() : 'Anonymous';
const question = $('#question').val();
const timestamp = new Date().toISOString();
const fileUpload = $('#fileUpload')[0].files[0];
// Input validation
if (!topic || !instansi || !question.trim()) {
alert('Please fill in all required fields.');
return;
}
if (countWords(question) > 1000) {
alert('Question cannot exceed 1000 words.');
return;
}
if (nameOption === 'input' && !/^[a-zA-Z\s]+$/.test(name)) {
$('#nameError').text('Name can only contain letters and spaces.').show();
return;
}
// AJAX request to send data
$.ajax({
url: 'your-server-endpoint.php',
type: 'POST',
data: {
topic: topic,
instansi: instansi,
name: name,
question: question,
timestamp: timestamp,
file: fileUpload
},
success: function(response) {
alert('Question submitted successfully!');
},
error: function(xhr, status, error) {
alert('Failed to send question: ' + error);
}
});
});
});
< /code>
Я попытался отладить код, но я все еще не могу решить проблему. Любая помощь будет очень оценена! ### Дополнительная информация: < /p>
[*] среда < /strong>: я использую jQuery версию 3.5.1 и Php 7.4 на a локальный сервер.
[*] браузер [/b]: проблема возникает как в Chrome, так и в Firefox.
[*] network : я проверил вкладку «Сеть» в инструментах разработчика, и запрос отправляется, но ответ указывает на ошибку сервера (500 Ошибка внутреннего сервера).
код на стороне сервера : вот фрагмент обработки кода PHP Запрос: < /p>
Подробнее здесь: https://stackoverflow.com/questions/794 ... javascript
Не удалось отправить данные на сервер, используя AJAX в JavaScript [Duplicate] ⇐ Javascript
Форум по Javascript
1739047682
Anonymous
Я испытываю проблему при попытке отправить данные на сервер, используя Ajax в JavaScript. Каждый раз, когда я пытаюсь отправить вопрос, я получаю сообщение об ошибке «не удалось отправить вопрос: ошибка». Я проверил свой код, но я не могу определить причину. < /P>
Вот код JavaScript, который я использую для отправки данных: < /p>
let questions = [];
let itemsPerPage = 10;
let currentPage = 1;
let instansiList = [];
let captchaValue = '';
// Getting DOM elements
const alertMessage = document.querySelector('.alert-message');
const containerWidth = document.querySelector('.alert-container').offsetWidth;
const messageWidth = alertMessage.offsetWidth;
let position = containerWidth;
// Function for alert message animation
function animate() {
position -= 2;
if (position < -messageWidth) {
position = containerWidth;
}
alertMessage.style.transform = `translateX(${position}px)`;
requestAnimationFrame(animate);
}
// Running animation on page load
window.onload = function() {
animate();
};
// Preventing certain actions
document.addEventListener('contextmenu', e => e.preventDefault());
document.addEventListener('copy', e => {
e.preventDefault();
alert("Copying content is not allowed.");
});
document.addEventListener('selectstart', e => e.preventDefault());
document.addEventListener('keydown', event => {
if (event.key === 'PrintScreen') {
alert('Taking screenshots is not allowed.');
}
});
// Main function when document is ready
$(document).ready(function() {
$('#submitQuestion').click(function() {
const topic = $('#topic').val();
const instansi = $('#instansiInput').val();
const nameOption = $('#nameOption').val();
const name = nameOption === 'input' ? $('#name').val() : 'Anonymous';
const question = $('#question').val();
const timestamp = new Date().toISOString();
const fileUpload = $('#fileUpload')[0].files[0];
// Input validation
if (!topic || !instansi || !question.trim()) {
alert('Please fill in all required fields.');
return;
}
if (countWords(question) > 1000) {
alert('Question cannot exceed 1000 words.');
return;
}
if (nameOption === 'input' && !/^[a-zA-Z\s]+$/.test(name)) {
$('#nameError').text('Name can only contain letters and spaces.').show();
return;
}
// AJAX request to send data
$.ajax({
url: 'your-server-endpoint.php',
type: 'POST',
data: {
topic: topic,
instansi: instansi,
name: name,
question: question,
timestamp: timestamp,
file: fileUpload
},
success: function(response) {
alert('Question submitted successfully!');
},
error: function(xhr, status, error) {
alert('Failed to send question: ' + error);
}
});
});
});
< /code>
Я попытался отладить код, но я все еще не могу решить проблему. Любая помощь будет очень оценена! ### Дополнительная информация: < /p>
[*] [b] среда < /strong>: я использую jQuery версию 3.5.1 и Php 7.4 на a локальный сервер.
[*] браузер [/b]: проблема возникает как в Chrome, так и в Firefox.
[*] [b] network [/b]: я проверил вкладку «Сеть» в инструментах разработчика, и запрос отправляется, но ответ указывает на ошибку сервера (500 Ошибка внутреннего сервера).
[b] код на стороне сервера [/b]: вот фрагмент обработки кода PHP Запрос: < /p>
Подробнее здесь: [url]https://stackoverflow.com/questions/79423893/failed-to-send-data-to-server-using-ajax-in-javascript[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия