Я не совсем уверен, что происходит, но недавно я попытался mod_rewrite, чтобы изменить мой URL.
Исходный URL-адрес выглядит так: main / index. php? Board = messages
Я обратился к этому: main / board / messages
Важное примечание: Папка или файл объявлений отсутствует. Я использую его как параметр URL для запроса.
Я использовал эту строку в своем файле .htaccess для изменения URL:
RewriteRule ^main/board/([0-9a-zA-Z_-]+) main/index.php?board=$1
Проблема в том, что он дублирует страницу html элементов, когда я выполняю действие, которое выполняет ajax вызов, такой как отправка сообщения или ответ на сообщение. Когда я осмотрел элементы, он показал, что мой заголовок до нижнего колонтитула был дублирован (например, два элемента заголовка, две навигации), как если бы вся страница html была дублирована.
Когда я проверял Консоль, он также генерируется это:
jquery-3.4.1.min.js:2 [Deprecation] Synchronous XMLHttpRequest on the main thread is deprecated because of its detrimental effects to the end user's experience.
Этого не происходит при использовании исходного URL, main / index. php? board = Объявления. На самом деле я не знаю, что происходит.
Вот мое последнее исправление благодаря Уэсли:
Пример одного из моих ajax звонков
$(document).on("click", ".like i", function() {
var postid = $(this).closest("div").parent().find("input").val();
$.post("like.php", {
userid: id,
postid: postid
}, function(data) {
alert(data);
});
});
А вот содержимое подобного. php
<?php echo "Hello"; ?>
По какой-то причине он возвращает весь HTML контент! Этого не происходит при использовании оригинального URL. В чем может быть причина?