Название: Вопрос связанный с языком программирования JavaScript Отправлено: Вопрос от 24 сентября 2023, 13:42:11 Привет!
Есть ли здесь люди, которые хорошо разбираются в языке программирования JavaScript? Проблема следующая. Я хочу для каждого зашедшего человека на мой веб-сайт создать cookies-файл. У каждого из этих людей будут будут свои настройки. Этих настроек около пяти. Ключевой параметр - это псевдоним вошедшего. Так вот. Я создаю cookies-файл для первого вошедшего человека: document.cookie = 'pc_user_1=' + localStorage.getItem('my_nickname_ls'); <!-- localStorage.getItem('my_nickname_ls') Тут хранится Ivanov --> document.cookie = 'smiles=1'; document.cookie = 'time=1'; document.cookie = 'sound=1'; Потом заходи другой человек. Если я напишу такие строки: document.cookie = 'pc_user_1=' + localStorage.getItem('my_nickname_ls'); <!-- localStorage.getItem('my_nickname_ls') Тут хранится Sidorov --> document.cookie = 'smiles=2'; document.cookie = 'time=2'; document.cookie = 'sound=2'; Мой cookies-файл изменится. И там будут новые параметры. А мне надо, что создался новый cookies-файл с новыми параметрами для Sidorov`а. Буду очень признателен, если кто-то подскажет мне, как решить эту проблему. Название: Re: Вопрос связанный с языком программирования JavaScript Отправлено: Вопрос от 24 сентября 2023, 13:52:25 Уточню.
Эти два человека используют один компьютер, то есть для двух учётных записей должны быть два различных cookies-файла. Название: Re: Вопрос связанный с языком программирования JavaScript Отправлено: джелави от 27 декабря 2024, 15:14:59 В JavaScript, когда вы создаете cookie, вы используете одно и то же имя для каждого пользователя, что приводит к перезаписи существующего cookie. Чтобы создать отдельные cookies для каждого пользователя, вам нужно использовать уникальные имена для cookies, основанные на псевдониме пользователя или на уникальном идентификаторе.
Вот пример, как это можно сделать: javascript // Получаем псевдоним пользователя из localStorage const nickname = localStorage.getItem('my_nickname_ls'); // Создаем уникальные cookies для каждого пользователя document.cookie = 'pc_user_' + nickname + '=' + nickname; // Например, pc_user_Ivanov=Ivanov document.cookie = 'smiles_' + nickname + '=1'; // smiles_Ivanov=1 document.cookie = 'time_' + nickname + '=1'; // time_Ivanov=1 document.cookie = 'sound_' + nickname + '=1'; // sound_Ivanov=1 Таким образом, для каждого пользователя вы будете создавать cookies с уникальными именами, например, pc_user_Ivanov, smiles_Ivanov, и так далее. Когда другой пользователь (например, Sidorov) зайдет на сайт, вы можете сделать следующее: javascript const nickname = localStorage.getItem('my_nickname_ls'); // Создаем cookies для нового пользователя document.cookie = 'pc_user_' + nickname + '=' + nickname; // Например, pc_user_Sidorov=Sidorov document.cookie = 'smiles_' + nickname + '=2'; // smiles_Sidorov=2 document.cookie = 'time_' + nickname + '=2'; // time_Sidorov=2 document.cookie = 'sound_' + nickname + '=2'; // sound_Sidorov=2 Теперь у вас будут разные cookies для каждого пользователя, и они не будут перезаписывать друг друга. Вы можете использовать эти cookies для хранения настроек каждого пользователя. сказал чатбот ГПТ, и грязно выругался |