Я хотел бы знать, как изменить переменную PHP, если я нажму кнопку. Предположим, у меня есть следующая веб-страница:
_______________________________________________ | Menu | A Webpage | | | | | - item1 | | | - item2 | | | - item3 | Content | | - item4 | | | | | | | |
И если я нажму на «item1», страница изменится с данными, связанными с пользователем, который связан с этой кнопкой. То же самое происходит с другими предметами.
В настоящее время это мой код:
<script> function test1() { alert("Hello World1!"); } function test2() { alert("Hello World2!"); } function test3() { alert("Hello World3!"); } function test4() { alert("Hello World4!"); } </script> <a id="test1" href="#" onClick="test1();"><h5>item1</h5></a><br /><br /> <a id="test2" href="#" onClick="test2();"><h5>item2</h5></a><br /><br /> <a id="test3" href="#" onClick="test3();"><h5>item3</h5></a><br /><br /> <a id="test4" href="#" onClick="test4();"><h5>item4</h5></a><br /><br />
Этого достаточно, чтобы открыть окно или скрыть деление или что-то еще. Но я хочу, чтобы щелкнуть по кнопке. Я хочу изменить переменную PHP. Как это:
<script> function test1() { <? $userid == '1'; ?> } </script> <a id="test1" href="#" onClick="test1();"><h5>item1</h5></a><br /><br />
С этим я могу легко изменить страницу на то, что пользователь хочет увидеть, без необходимости делать несколько страниц. Но мой вопрос: «Как я могу сделать это возможным»?
Я хотел бы поблагодарить вас всех заранее!
PHP – это не тот же язык или тип языка, что и JavaScript. PHP работает линейно, и как только обработка завершена, вы не можете вернуться и снова вызвать функцию или обновить переменную, например. PHP запускает код от вершины файла до нижней части файла, а когда он достигает конца, он заканчивается.
Самое близкое к решению, которое вы ищете, – это использовать jQuery AJAX
для вызова PHP-скрипта для обновления переменных. Мне кажется, что вы хотите использовать AJAX для изменения данных страниц. Вы можете добиться этого, используя следующий пример.
$('#menu A').click(function (e) { var jqxhr = $.get('phpscript.php?data=' + $(this).attr('href')); jqxhr.success(function(data) { $('#content').html(data); }); });
Что будет сделано выше, когда вы нажимаете ссылку в <div id="menu" />
она попытается получить содержимое из сценария, запущенного в том же каталоге, что и phpscript.php. Для определения возвращаемых данных страницы используется переменная данных. После завершения он выведет HTML, возвращаемый вашим скриптом, в контейнер #content, например <div id="content">
Надеюсь, я правильно понял ваш вопрос. И также имейте в виду, что это потребует небольшой проверки, проверяя, что вы получаете 200 OK, и на самом деле получены данные и т. Д.
Используйте Ajax, таким образом вы можете загружать содержимое веб-страницы внутри чего-то, например, div в вашем примере, без необходимости перезагрузки всей страницы.
Ajax & PHP
Для этого вам нужно будет использовать запросы Ajax.
Я не понимаю, почему вы хотите изменить значение переменной php
потому что эта переменная не будет существовать после выполнения этой страницы. где, поскольку вы можете использовать некоторую переменную сеанса
также, если мы хотим установить некоторый валус, нам нужно присваивать оператор (=)
для установки переменной php вы можете использовать ajax-вызов, на сервере должна быть страница для изменения значения