Задумался над тем, что бы попробовать перевести свою страницу на формат без перезагрузки всей страницы, а лишь ее основы внутри.Это называется SPA (single page application), и не всегда это хорошая идея.
Все сводится к тому, что делать нужно это на Jquery.Плохая идея, для этого есть совершенно другие, более подходящие инструменты - react, vue...
Но после этого страница не перезагружалась, а просто принимала эти данные и обновляла информацию на всей странице, выводя пользователю эту же страницу, но с новыми результатами?В общем случае используют несколько приемов: Урл подменяют с помощью history pushState, запросы отправляют через fetch или средствами фреймворка, бэкенд при этом обычно отдает не хтмл, а json, по сути передавая только нужные данные, из которых фронтенд строит уже нужный хтмл из компонент.
Прикол в том, что если удалить физический файл, а запись в БД нет,то рано или поздно будешь сожалеть что написал кривой г-код. Это мы вроде как поняли.
Важно отметить, что доступ идёт на прямую к файлу, а не на сервер с запросом на файлНу да, это "редкий" случай. Важно понимать.
Возможно ли как-то это отследить и вывести ошибку об отсутствии файла (Ну и там не сервер кинуть запрос об удалении записи в БД и т.д. и т.п.)?Возможно. Достаточно добавить проверку на file_exists(), только пути надо указывать серверные (Важно понимать), так как поведение в случае запроса через веб адрес зависит от настроек окружения.
Если длина заголовка слишком длинная (headlineArray.length > 29), он обрезается и добавляется троеточие (headlineArray = headlineArray.slice(0,28)+'...').Делайте через цсс, так не придется издеваться над кодом, и что самое главное, автоматически будет обрезаться лишний текст, не зависимо от количества символов, которые бывают разные по ширине.
нажимая на кнопку, в адресной строке появляется следующие .../#formReview
<a href="#formReview" onclick="addReview('{{i.author}}', '{{i.id}}');return false;">Ответить</a>
let appendEventBlock = "<a href=" + eventDetailsUlr + " style='font-size: 16px; color: blue'>" + scheduledDate + "</a>
<br />
<span>@localizator["Executor"]: " + event.executor.firstName + " " + event.executor.lastName + "</span>
<span class='text-muted text-break'>@localizator["Note"]: " + event.note + "</span>
";
document.getElementById(appendEventContainer).innerHTML += appendEventBlock;
Но заметил тут то, что показатели для одного и того же города могут ну очень сильно отличаться.Ну так и в чем проблема? Разные сервисы используют данные разных инструментов (погодных станций, спутников, зондов), ну и ПО для прогнозов сильно меняет картину, разные модели предсказания, так что в этом ничего странного нет. Вопрос предпочтений. Можно еще гисметео посмотреть, у них тоже есть апи.
присутствует кодировка %5B%5D которую ajax запрос видимо с помощью своей магии добавил в url.Это квадратные скобки, которые скорее всего говорят о нескольких инпутах с одним именем. Ну или данные в переменой - массив. Обычный url encode.
В fetch же кодировка не имеется и я получаю статус 500.Стоит посмотреть ошибку, которая отдается с сервера.
Подскажите пожалуйста как можно решить задачу.Неплохо бы зайти в инструменты разработчика и сравнить нетворк запросы от "аякса" и фетч, в частности как выглядит пэйлоад. Тогда будет понятно куда копать, хотя серверная ошибка и так должна по идее дать ответ.