Всем привет! Есть код, который недодуман: Код (PHP): if($_POST['id'] == $row["prod_id"]){ if(isset($_SESSION['$row[prod_id]'])){ $_SESSION['$row[prod_id]']['itogo']+=$row['prod_price']; $_SESSION['$row[prod_id]']['name']=$row['prod_name']; $_SESSION['$row[prod_id]']['price']=$row['prod_price']; $_SESSION['$row[prod_id]']['count']+=1; }else{ $_SESSION['$row[prod_id]']['itogo']=$row['prod_price']; $_SESSION['$row[prod_id]']['name']=$row['prod_name']; $_SESSION['$row[prod_id]']['price']=$row['prod_price']; $_SESSION['$row[prod_id]']['count']=1; } } Как присвоить значение $row["prod_id"] имени сессии? То есть, при нажатии на определенную кнопку(а их там не одна),у которой есть ID, равный $row["prod_id"], должна создаваться сессия с именем $row["prod_id"]. Как сделать ? По моему коду не работает... Подсказка от модератора: Любой код или текст конфигурации пишите между тегом [code=php] и [/code]. Используйте отступы в коде для форматирования текста. Это помогает быстрее понять вас, увеличивает шанс на получение ответа. Что выделять? Например: PHP, HTML, CSS, JavaScript, SQL, XML, .htaccess, ini, регулярные выражения, код шаблонизаторов, любая другая разметка, результаты array/object dump и т. д.
Предлагаю вам еще раз почитать, что такое сессии и как они работают. $_SESSION['$row[prod_id]'] - это не обращение к сессии с таким-то именем. Нет никакого супарглобального массива всех сессий, из которого надо достать "свою". $_SESSION - это массив, уникальный для каждой открытой сессии. Туда просто кладешь значения и не паришься. А еще этот массив не появится в системе, если не был вызван session_start(); Точнее как, при попытках что-то записать в него, появиться-то он появится, но не будет сохранен как сессия. Для пхп это будет обычный массив, который умрет после отработки.
Ключ - это просто строка в кавычках. Ты вообще в курсе, как работают массивы в пхп, бро? По-моему ты немного вперед забегаешь с сессиями.
не надо его организовывать. Его надо понять. Ты ж вообще не понимаешь, что пишешь. Ты вчитайся медленно в одну строку, тебе сразу всё станет понятно и ты сам поймешь, что написать.
зачем? ну сессия создаётся сама считай, нужно только разок дёрнуть session_start(); а остальное-то тебе зачем?
У меня из БД выводится товар, напротив каждого товара есть кнопка. Хочу сделать так: при нажатии на кнопку вывести сумму товара. При повторном нажатии на эту кнопку нужно прибавить к цене товара эту же цену. Пример: 2 товара - хлеб(20), соль(10). При нажатии на кнопку хлеб n-ное количество раз нужно 20*n, при нажатии на соль сделать 10*n. Вот и надо как-то сделать для каждой кнопки что-то уникальное - либо переменную, либо еще что...
Код (PHP): $_SESSION['goods'][1]['price'] = 100; $_SESSION['goods'][1]['quantity'] = 4; $_SESSION['goods'][1]['amount'] = 400;
Получается, что [1] - это у вас идентификатор? И он руками прописан. А как его присвоить автоматически? Допустим, у кнопки ID = 50. Как поставить 50 автоматически, а не руками?
ну что значит как. Как-то. Нажал на кнопку, отправилась форма. Три хлеба и одна соль. Клади в сессию. Читай из сессии. Повелевай сессией. Рисуй корзиночку. =)
Передавать POST-запросы умеешь? Если нет, то срочно читай, что это да как. Это крайне краеугольный камень всего и вся. Если умеешь, то клади свои ID-шки в POST, а на стороне сервера уже иди по нему циклом и втыкай значения из него в качестве айдишников в сессии.
Допустим, при нажатии на кнопку вывелась цена товара. Как при повторном нажатии на эту кнопку прибавить к этой цене эту же цену?