#php #ajax #dynamic #view
#php #ajax #динамический #Вид
Вопрос:
У меня есть заголовок и основной раздел на моем сайте. Как я могу создавать динамические страницы без обновления страницы, просто размещая файлы из profile.php , search.php и так далее внутри основного раздела моего веб-сайта с помощью меню навигации?
Например, у меня есть profile.php в качестве основного интерфейса пользователя и с помощью ?action=action
я добился создания динамических страниц. Но когда дело доходит до поиска, я должен перенаправлять пользователя на search.php?query=search-text
и так далее для других страниц.
Спасибо.
Ответ №1:
Звучит так, как будто вы хотите выполнить замену содержимого с помощью AJAX.
Комментарии:
1. является ли ajax единственным решением здесь? нельзя ли это сделать только через php? спасибо, проверю ссылку
2. Если вы не хотите, чтобы происходило обновление страницы, тогда да, вам придется использовать AJAX.
3. Как насчет скрипта curl на PHP?
4. Единственное, что у вас есть, если вы не хотите обновлять страницу, это использовать AJAX или фреймы. Фреймы — плохая практика, поэтому используйте AJAX.
5. Это было бы связано с той же политикой происхождения .
Ответ №2:
Используя jQuery, вы можете сделать
$('#divid').load( "URL" )
Использование Javascript и фреймов — единственные способы сделать это без обновления заголовка. Фреймы считаются плохой практикой, поэтому AJAX и jQuery — ваш лучший вариант здесь.
Комментарии:
1. Однажды я сделал это по-вашему, и кто-то показал мне функцию загрузки. Делает жизнь намного проще! jQuery отлично подходит для добавления полезных инструментов, которые экономят несколько строк кода.
Ответ №3:
Есть несколько способов сделать это.
Если вы не используете фреймворк (похоже, что это не так), вы можете просто использовать include / require для переноса целых фрагментов кода в ваш файл (требуется обновление страницы).
Если вы используете фреймворк, поддерживающий структуру MVC, то вы просто включите несколько представлений для создания своей страницы ответа. Синтаксис отличается в разных фреймворках, поэтому, к сожалению, для вас нет примера кода (требуется обновление страницы).
Также вы могли бы использовать AJAX. Обратите внимание, AJAX не является новым языком программирования. Он использует Javascript для выполнения независимого вызова в браузере конечного пользователя вашего сервера на специальной странице / обработчике. Затем скрипт-обработчик на стороне сервера обрабатывает ваш запрос и возвращает фрагмент HTML-кода или небольшой блок текста, который затем принимается вашим браузером конечных пользователей и затем динамически вставляется в DOM (без обновления страницы).
Приветствия.
Ответ №4:
Единственный известный мне способ добиться этого — запросить содержимое с помощью AJAX и установить содержимое вашего div в качестве результата — возможно, это не самый идеальный вариант (не уверен, поскольку я никогда не изучал это), но именно так я бы поступил. jQuery упростил бы это примерно так:
function loadPage(pg)
{
var container = $("#container");
$.ajax({
method: "post",
data: "page=" pg,
url: "loadhtml.php",
success: function(result)
{
container.html(result);
}
});
}