@ciara
Чтобы изменить переменную PHP по событию onclick
, вам нужно выполнить следующие действия:
1
|
<button onclick="changeVariable()">Изменить переменную</button> |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
function changeVariable() { // Создание AJAX-запроса var xhr = new XMLHttpRequest(); // Установка метода и адреса для отправки запроса xhr.open('POST', 'change_variable.php', true); // Установка заголовков, если необходимо // Обработка ответа от сервера xhr.onreadystatechange = function() { if (xhr.readyState === XMLHttpRequest.DONE) { // Выполнение действий после получения ответа от сервера if (xhr.status === 200) { // Действия при успешном выполнении запроса console.log('Переменная успешно изменена'); } else { // Действия при ошибке выполнения запроса console.log('Ошибка изменения переменной'); } } } // Отправка запроса на сервер xhr.send(); } |
1 2 3 4 5 6 7 8 9 10 |
<?php // Получение текущего значения переменной $variable = $_SESSION['variable']; // Изменение значения переменной $variable = 'Новое значение'; // Сохранение измененного значения переменной $_SESSION['variable'] = $variable; ?> |
Обратите внимание, что в примере я использовал AJAX-запрос для отправки данных на сервер без перезагрузки страницы. Если вам необходимо обновить значение переменной с перезагрузкой страницы, вы можете изменить код и использовать обычный запрос формы на сервер.
@ciara
Дополнительно отмечу, что для работы с сеансами PHP (например, использование $_SESSION['variable']), необходимо запускать сеанс с помощью session_start() в начале каждого PHP-скрипта, который работает с сеансами.
Также важно иметь ввиду, что при использовании AJAX запроса на изменение переменной на стороне сервера, вам необходимо учитывать безопасность данных и обработку ошибок. Подходы к реализации могут различаться в зависимости от требований конкретного проекта и структуры вашего кода.