Как сохрянять данные чекбоксов на сайте?
Тоесть, чтобы при обновлени страницы, галочка которая была поставлена в этом чекбоксе - сохранялась.
Было бы хорошо если бы ответили кодом, или чем-то на примере кода.
Извините, за такой наглый вопрос, но учить ради этого php не очень хочется
PHP
Не разбираюсь в php, но
Записать их в БД или в файл (в файл хуже), а после обновления страницы поставить обратно
Если не требуется использовать эти значения где-либо, то хватит клиентского js
Если не требуется использовать эти значения где-либо, то хватит клиентского js
Даже если и сделаешь - то что оно тебе даст? Ну, будут сохраняться галочки, и что?))
Кстати, если серверу эти галочки нафиг не нужны, а только клиенту - то сохранять можно в localStorage и не мучаться с регистрацией/авторизацией пользователя, которая явно понадобится, если пользоваться приложением будут несколько человек (чтобы не получилось, что один может менять галочки другого)
Кстати, если серверу эти галочки нафиг не нужны, а только клиенту - то сохранять можно в localStorage и не мучаться с регистрацией/авторизацией пользователя, которая явно понадобится, если пользоваться приложением будут несколько человек (чтобы не получилось, что один может менять галочки другого)
< ?php
$checked=$_POST['checkbox1'];
$host=...
$user=...
$password=...
$database=...
$link = mysqli_connect($host, $user, $password, $database);
mysql_query('INSERT INTO table (field1) VALUE ($checked)');
mysqli_close($link);
?>
Вот так можно сохранять. Но еще, как уже сказал Лайт, понадобится сделать авторизацию, поэтому вместе с галочкой ты должен в базу добавлять имя пользователя, который эту галочку ставит. Ну а для того, чтобы галочку восстанавливать, по аналогии нужно сделать считывание значения из таблицы.
$checked=$_POST['checkbox1'];
$host=...
$user=...
$password=...
$database=...
$link = mysqli_connect($host, $user, $password, $database);
mysql_query('INSERT INTO table (field1) VALUE ($checked)');
mysqli_close($link);
?>
Вот так можно сохранять. Но еще, как уже сказал Лайт, понадобится сделать авторизацию, поэтому вместе с галочкой ты должен в базу добавлять имя пользователя, который эту галочку ставит. Ну а для того, чтобы галочку восстанавливать, по аналогии нужно сделать считывание значения из таблицы.
Существует сервер и клиент.
На сервере выполняется PHP, а результат работы отправляется на клиент и показывается браузером пользователю.
Поэтому, чтобы иметь возможность манипулировать с данными на сервере их нужно ему отправить.
Я вижу 2 варианта, в зависимости от того, что тебе нужно.
1) Использовать куки.
Плюсы:
Не надо делать базу данных (разбираться в этом), запись чтение и т. д (простота реализации)
Минусы:
Нет возможности узнать, что поставил пользователь, кроме как с браузера пользователя (с конкретного браузера) (т. е с пк и с телефона могут быть разные)
Вар1.1
Если совсем не использовать js, то можно по инпуту с типом submit отправлять форму (перезагружать страницу) и, затем, выполнять действия на сервере (например создавать куки). А при загрузке страницы чекать это (куки) и ставить галочки.
создать куки
setcookie(название, контент, время жизни, путь);
получить значение куки (нуждается в проверке на существование)
$a = $_COOKIE[название]
Вар1.2
Можно создавать куки вообще без сервера - все делать на клиенте (js)
Например, такая строка поставит cookie с именем userName и значением Vasya:
document.cookie = "userName=Vasya";
возвращает cookie с именем name, если есть, если нет, то undefined
function getCookie(name) {
var matches = document.cookie.match(new RegExp(
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
return matches? decodeURIComponent(matches[1]) : undefined;
}
Сам решай что тебе ближе
2)Делать записи в БД (СЛОЖНЫЙ ДЛЯ ВАС ВАРИАНТ (наверно))
Плюсы:
На любом устройстве пользователь будет видеть свои данный
Не только пользователь может посмотреть данные (админ например (требуется доп. реализация); можно выводить статистику (тоже требудется дом реализация)) ( Хотя, если возник такой вопрос, такое не планируется)
Минусы:
НАДО делать базу данных (разбираться в этом), запись чтение и т. д (сложность реализации)
Требуется определить конкретного пользователя т. е нужна аутентификация (хотя есть возник такой вопрос, то этого конечно нет и не планируется)
Получаем данные каким либо образом (можно как в 1.1),анализируем, открываем соединение с бд (ее надо создать (не хочу это расписывать - это долго, почитай в нете)), делаем запрос к ней (запись в бд))
При загрузке страницы открываем соединение с бд (ее надо создать (не хочу это расписывать - это долго, почитай в нете)), делаем запрос к ней (получение данных)), анализируем, отмечаем чекбоксы.
-------------
За саму галочку отвечает аргумент checked в теге чекбокса
Попытался описать все подробно.
Надеюсь помог!
На сервере выполняется PHP, а результат работы отправляется на клиент и показывается браузером пользователю.
Поэтому, чтобы иметь возможность манипулировать с данными на сервере их нужно ему отправить.
Я вижу 2 варианта, в зависимости от того, что тебе нужно.
1) Использовать куки.
Плюсы:
Не надо делать базу данных (разбираться в этом), запись чтение и т. д (простота реализации)
Минусы:
Нет возможности узнать, что поставил пользователь, кроме как с браузера пользователя (с конкретного браузера) (т. е с пк и с телефона могут быть разные)
Вар1.1
Если совсем не использовать js, то можно по инпуту с типом submit отправлять форму (перезагружать страницу) и, затем, выполнять действия на сервере (например создавать куки). А при загрузке страницы чекать это (куки) и ставить галочки.
создать куки
setcookie(название, контент, время жизни, путь);
получить значение куки (нуждается в проверке на существование)
$a = $_COOKIE[название]
Вар1.2
Можно создавать куки вообще без сервера - все делать на клиенте (js)
Например, такая строка поставит cookie с именем userName и значением Vasya:
document.cookie = "userName=Vasya";
возвращает cookie с именем name, если есть, если нет, то undefined
function getCookie(name) {
var matches = document.cookie.match(new RegExp(
"(?:^|; )" + name.replace(/([\.$?*|{}\(\)\[\]\\\/\+^])/g, '\\$1') + "=([^;]*)"
));
return matches? decodeURIComponent(matches[1]) : undefined;
}
Сам решай что тебе ближе
2)Делать записи в БД (СЛОЖНЫЙ ДЛЯ ВАС ВАРИАНТ (наверно))
Плюсы:
На любом устройстве пользователь будет видеть свои данный
Не только пользователь может посмотреть данные (админ например (требуется доп. реализация); можно выводить статистику (тоже требудется дом реализация)) ( Хотя, если возник такой вопрос, такое не планируется)
Минусы:
НАДО делать базу данных (разбираться в этом), запись чтение и т. д (сложность реализации)
Требуется определить конкретного пользователя т. е нужна аутентификация (хотя есть возник такой вопрос, то этого конечно нет и не планируется)
Получаем данные каким либо образом (можно как в 1.1),анализируем, открываем соединение с бд (ее надо создать (не хочу это расписывать - это долго, почитай в нете)), делаем запрос к ней (запись в бд))
При загрузке страницы открываем соединение с бд (ее надо создать (не хочу это расписывать - это долго, почитай в нете)), делаем запрос к ней (получение данных)), анализируем, отмечаем чекбоксы.
-------------
За саму галочку отвечает аргумент checked в теге чекбокса
Попытался описать все подробно.
Надеюсь помог!
куки/сессии.
если не хотите учить - идите на фриланс, почему кто-то должен бесплатно делать работу?)
если не хотите учить - идите на фриланс, почему кто-то должен бесплатно делать работу?)
Похожие вопросы
- PHP Polling ChatGPT
- Как оптимизировать структуру сайта php. на готовом шаблоне
- Не работает PHP include на хостинге
- Хеширование пароля php
- Подскажите хороший курс по PHP практике?
- Пишу авторизацию (php). Куки не работают
- Вопрос начинающего программиста Python\PHP
- Как в PHP указать тип переменной unsigned int?
- какой функционал делают на сайтах с помощью php? вообще не пойму что конкретно пишут на этом языке на сайтах..
- Смогу ли я устроиться стажером php?