Могу ли я передать текущую переменную через php? Если так, то как?

0

Я немного подошел к концу, поэтому я надеялся, что, прежде чем идти по любым путям, кто-то может сказать мне, возможно ли, что я делаю, или если есть простой/быстрый способ его решения:

После того, как вы столкнулись с некоторыми проблемами в меню аккордеона, я выбрал временное исправление использования нескольких меню и заменил каждый из них на js. У меня нет кода от меня, но по существу:

function change-menu(menu){
var new-menu = menu + ".php";
(#menu-area).load(new-menu);
}

(Я только проделал небольшую работу с js до сих пор, поэтому, пожалуйста, проигнорируйте приведенный выше синтаксис... Я попытаюсь исправить это позже.)

И моя ссылка будет примерно такой:

<a onclick="change-menu('something')">Something</a>

Внутри бокового меню находятся миниатюры для иллюстраций, которые будут загружаться в области окна, и чтобы это было просто, я просто использую php include, который будет выглядеть примерно так:

<a href="art.php?id=picture1&name=blahblah">[img goes here]</a>

Но я понял, что когда я это делаю, я также должен передать меню на следующую страницу, чтобы он знал, какое меню изначально загружается на новую страницу. Но тогда я все же - и я переанализирую это и немного - если я хочу, чтобы опыт был исправлен и выглядел определенным образом, даже если я кодирую его немного битмаксэффе на тот момент, когда я не хочу, чтобы кто-то нажал кнопку "Назад" и открыть меню и закрыть различные части.

Поэтому возникает вопрос: есть ли способ, с помощью которого я могу указать ссылку php для импорта любого текущего состояния/значения боковой панели? Я просто хочу убедиться, что боковое меню изменяется только тогда, когда пользователь нажимает на него, а не на нажатие кнопок "Назад" или "Назад". Это простое действие? Это даже возможное действие? Есть ли лучшие решения?

2 ответа

1

Вы должны заглянуть в AJAX, чтобы добиться этого. Используя AJAX, вы можете получить новый контент как HTML с php-страницы, а затем использовать JavaScript для замены существующего содержимого боковой панели на возврат AJAX. Таким образом, содержимое боковой панели будет изменено без перезагрузки страницы.

  • 0
    Спасибо! На прошлой неделе я впервые попробовал функцию AJAX в аналогичном решении, и она отлично работала, за исключением того, что кнопка возврата браузера не работала, как я надеялся впоследствии (например, если вы нажмете с картинки 1 на картинку 2) Я хочу, чтобы НАЗАД взял ваш пакет на рис. 1, а не на начальную загрузку страницы), поэтому я подумал, что php будет лучше, пока я не пойму, что мое меню будет меняться с помощью кнопки назад. Не могли бы вы уточнить, что бы вы порекомендовали? Я довольно новичок с большей частью этого и учусь, как я иду.
  • 0
    Я не думаю, что использование кнопки «Назад» для навигации - лучший способ. Что вы можете сделать, это сохранить предыдущий URL-адрес (например, переменную сеанса) и использовать этот URL-адрес, чтобы перенаправить пользователя на предыдущую страницу. Вы также можете использовать функцию JavaScript window.history.back() или header('Location: ' . $_SERVER['HTTP_REFERER']); PHP header('Location: ' . $_SERVER['HTTP_REFERER']); вернуться на предыдущую страницу, но я не буду рекомендовать их из-за их уязвимостей.
0

Нет, вы не можете сделать это в php. Вместо этого используйте Javascript.

  • 0
    Большой! и случайно вы можете уточнить это? Причина, по которой я не остановился исключительно на js, заключалась в том, что я хочу, чтобы пользователь мог переходить от одного элемента к другому. Например, если они нажимают на изображение 1, изображение 1 загружается. Если они затем нажимают на изображение 2, изображение 2 загружается. Но я хочу, чтобы они могли вернуться к рисунку 1, если они ответят

Ещё вопросы

Сообщество Overcoder
Наверх
Меню