|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
15.06.2011, 22:16 | #1 |
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
Проблема с сессиями
Здравствуйте!
Пишу скрипт интернет-магазина. Допустим, что $_SESSION состоит из Array ( [basket] => Array ( [tovarnum] => 1 [199847] => Array ( [coll] => 1 ) [tovars] => 199847 ) ) . На страничке корзины, при нажатии на кнопку Пересчитать выполняется следующий скрипт: PHP код:
Array ( [basket] => Array ( [tovarnum] => 0 [tovars] => ) ) Весь смысл выполнения данного скрипта заключается в пересчёте товаров на страничке. (На начальной странице корзины предоставлено меню со всеми товарами в корзине и по текстовому полю для каждого товара. После этого все данные отправляются (post) на страничку обработки с вышенаписанным скриптом.) Раньше этот скрипт работал, но сейчас он неконтролируем. В чём проблема не могу понять. |
16.06.2011, 03:57 | #2 |
Antimoderаtoris
Участник клуба
Регистрация: 08.02.2008
Сообщений: 1,251
|
$_SESSION[basket][tovars]
что это такое? какой это язык? Это уж точно не PHP. Где кавычки? Что за китайский код? Где вы учились так программировать? PHP код:
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
|
16.06.2011, 12:00 | #3 |
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
Вообщето так тоже будет правильно писать:
$_SESSION[basket][tovars] $_SESSION['basket']['tovars'] это одно и тоже, хоть и не очень правильно, но php это варит и это экономит время. $_SESSION['basket']['tovars'] содержит коды товаров через запятую (например 19923,13324) от того и explode и implode, тоесть, если указано товара #19923 0 штук, то тогда он удаляется из корзины. Если меньше нуля, то пишется ошибка. $_SESSION['basket']['tovarnum'] содержит количество (например 2) товаров в корзине. $_SESSION['basket']['13324']['coll'] содержит штучное количество товара. Да, и вот исправленый код. Код:
|
16.06.2011, 12:17 | #4 |
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
В любом случае спасибо, проблему решил путём отделения корзины и каталога на отдельные страницы.
|
17.06.2011, 04:01 | #5 |
Antimoderаtoris
Участник клуба
Регистрация: 08.02.2008
Сообщений: 1,251
|
PHP много чего переваривает. Вы пишете быдлокод. С вашими соплями потом настоящим программистам приходится глаза и мозг ломать. То, что вы даже не удосужились попробовать разобраться в том, как работает приведённый мной пример кода, говорит о многом.
Что если я пошлю запрос формы и передам вашему скрипту через POST basket_post=1 и всё. Больше ничего постом не передавать. Что будет с вашим быдлоскриптом? Он сдуется. Где проверки? Вы пишете в сессию напрямую переменную из POST, без проверки типа. Что, если вместо количества передать abcde? Как вы потом это количество будете считать? Небось и в базу без проверки записывается. После таких вот "всё-и-так-работает-хорошо" клиенты от PHP открещиваются и ищут программистов на ASP, Perl, Python и т.д., потому что считают, что PHP глючный и кривой.
98% из тысячи моих постов сделаны в профильном подфоруме. Я не накручиваю свои посты болтанием в "курилке", а ты?
|
01.06.2013, 17:57 | #6 |
Верховный Судья
Пользователь
Регистрация: 23.11.2010
Сообщений: 82
|
На ваше удивление, я скажу вам, что проверка есть. Она запихана в процедуре, которая запускается автоматически при открытии страницы. Но я всё это ненужное вырезал из моего БЫДЛОКОДА дабы сэкономить вам время, чтобы сразу было понятно, где ошибка.
Ну наверно не зря? Действительно, в данном случае, я не прав. Но рас php варит код такого вида, почему бы не воспользоваться? Данный код приватный и больше ни один программист не будет его просматривать. P.S. Не обязательно так ЯРОСТНО РУГАТЬСЯ. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с сессиями | bboyb-rock | PHP | 1 | 29.01.2011 09:39 |
Загвостка с сессиями. | nec117 | PHP | 2 | 05.04.2010 01:13 |
Проблема с сессиями в PHP | Demien | PHP | 25 | 16.03.2010 23:37 |
Управление сессиями | NSvirus | PHP | 3 | 15.10.2009 22:07 |
проблема с сессиями | nntpaha | PHP | 3 | 16.03.2008 16:10 |