Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » пишем примитивный тырнет-магазин : помогите с сессиями в PHP

Ответить
Настройки темы
пишем примитивный тырнет-магазин : помогите с сессиями в PHP

Старожил


Сообщения: 282
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


привет народ.
нужно следующее: имеется список товаров. задача - чтобы пользователь заходил, отмечал нужные ему товары и после того как наберет все нужное нажимал кнопку "заказать" после чего письмо с указанием выбранных товаров идет ко мне на почту. то есть примитивный тырнет-магазин без кнопок персчета товара и прочего. натыкал - заказал. первый вопрос - как назначить сессию не сразу при входе на страницу а только после того как пользователь ткнул хотя бы один товар? то есть имя сессии как бы назначать самому а как? в этом месте я теряюсь что делать. хелп

-------
настоящему корейцу завсегда везде ништяк!


Отправлено: 17:53, 29-08-2006

 

Старожил


Сообщения: 282
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


стоп стоп. чего-то я натупил...
name мне нужен 1 value разные это во-первых а во-вторых надо наверное запомнить еще и параметры выборки чтобы в списке оставался только выбранный товар а то сейчас после нажатия "в корзину" список полностью выводится.
народ, вы мне советуйте и объяняйте плиз (а если вдруг кто видит, что тут делов на 10 минут при знании предмета и не влом будет может напишете готовое решение )

-------
настоящему корейцу завсегда везде ништяк!


Отправлено: 18:17, 30-08-2006 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


koresaram

Цитата:
$_SESSION['tovarIDs'] = $_REQUEST['$myrow[0]'];
$myrow[0] - это что?

вы что сюда выложили подряд код из всех скриптов или это все один index.php ?

вообще совет - использовать один срипт для всех шагов, заодно не придется показывать в html в теге form имя исполняемого скрипта (опятьже метод безопасности)

далее,
$HTTP_POST_VARS такие массивы уже устарели и их уже никто не использует, а если использует то это смотрится крайне "ламерски" бебе используйте массив $_POST или $_GET в зависимости от метода передачи (у вас post), иначе при переходе на следующую ожидаемую версию php ваш скрипт не будет работать, так как эти массивы более не будут поддерживаться и работать.

далее,

<option value=Север>Север</option>
кто так пишет? у вас должна быть создана таблица в бд, где есть два элемента:
1) id
2) direction

где id - уникальный ключ таблицы
а значение элемента direction является одним из округов

ну и соответственно форма должна выводить результат этой таблицы но в value (то что передается) надо писать id

будет выглядеть вот так например:
<option value=1>Север</option>
<option value=2>Юг</option>
и т.д.

-----

после отправки этой формы пишите в следующем скрипте в самом начале:
session_start();
$_SESSION['direction_id'] = $_POST['direction'];

если вы не знаете что такое $_REQUEST и как правильно записывать.

далее после нажатия на "отправить письмо" в следующем скрипте пишите
session_start();
и работайте с массивом $_SESSION['direction_id']
ВСЕ!

управился за 5 минут
а не за
Цитата:
кто видит, что тут делов на 10 минут
))

-------
Основы HTML | Конференции


Отправлено: 18:28, 30-08-2006 | #12


Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


кстати говоря использования print рекомендую изменить на echo, не говоря уже про форматирование..

-------
Основы HTML | Конференции


Отправлено: 18:52, 30-08-2006 | #13


Старожил


Сообщения: 282
Благодарности: 1

Профиль | Сайт | Отправить PM | Цитировать


E-mail
это все один index.php все в одном как шампунь

$myrow[0] - это что?
это по ламерски вывод значений ID объектов из БД. с ассоциативным массивом я не разобрался поэтому пришлось использовать определение по номеру столбца в базе 0-в этом столбце у меня ID объектов (стыдицца)

$HTTP_POST_VARS
по ламерски, согласен, но какгрится что осилил то и использовал

<option value=Север>Север</option>
кто так пишет? у вас должна быть создана таблица в бд, где есть два элемента:
1) id
2) direction

видит Бог, я именно так и хотел сделать , но поскольку в БД я перегоняю данные из екселя скачанным в инете скриптом (в котором я тоже нифига не рублю) то я сперва попробовал написать в екселе макрос чтоб он ставил там числа по округам но там оказалось недостаточно условий и в итоге я решил что особого ущерба от этого не будет и временно на это дело забил (стыдицца) но в свою защиту могу сказать, что после окончательного понимания всего процесса собирался это дело пофиксить

вобщем будем осмысливать и пробовать. а насчет 10 минут у меня еще такая проблема что по отдельности я как бы все понимаю а вот в одно целое это все собрать не могу хз почему
так что далеко не отходите вопросов будет еще множество

-------
настоящему корейцу завсегда везде ништяк!


Отправлено: 19:08, 30-08-2006 | #14


Аватара для E-mail

Ветеран


Сообщения: 640
Благодарности: 2

Профиль | Сайт | Отправить PM | Цитировать


Цитата:
$myrow[0] - это что?
это по ламерски вывод значений ID объектов из БД
угу это я своими телепатическими возможностями догодался, но вопервых почему ты его используешь ДО того как обратился с запросом к базе??
в третьих (я не сбился со счету) почему объявление сессий ПОСЛЕ любого вывода?

-------
Основы HTML | Конференции


Отправлено: 22:10, 30-08-2006 | #15


Аватара для Demiurg

Старожил


Сообщения: 339
Благодарности: 8

Профиль | Сайт | Отправить PM | Цитировать


...заранее сорри, что не совсем в тему...
...написал скрипт (тоже что-то вроде корзины)... данные, выбранные из базы, передавал через форму с параметром hidden... пришло время, когда передаваемых данных стало "ну просто завались"... вычитал про сессии, понравилось... но!... стоит добавить строчку "session_start();" в скрипт, как он "превращается" в нерабочий (выдает пустую страницу)... маюсь уже второй день...
P.S. (FreeBSD 6.1-p2, Apache 2.0.58, PHP 5.1.4, PostgreSQL 8.0.8)

-------
Человек тонкого ума живет бескорыстными, высокими интересами, его радости - это искусство, любовь, наука, путешествия, книги...


Отправлено: 11:58, 05-09-2006 | #16


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


Попробуйте поглядеть логи ошибок php. Также попробуйте установить error_reporting(E_ALL); в самом начале скрипта, может чего покажет. Также убедитесь, что до выражения session_start() не делалось никакого вывода в броузер. Почему это необходимо соблюдать читайте здесь.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 12:21, 05-09-2006 | #17


Аватара для Demiurg

Старожил


Сообщения: 339
Благодарности: 8

Профиль | Сайт | Отправить PM | Цитировать


Prisoner
В логах пишет - PHP Fatal error: Call to undefined function session_start()... заглянул в /usr/local/etc/php.ini, есть вот такие строчки:
session.use_cookies = 1
;session.use_only_cookies = 1
в браузере куки отключены, хоть и поменял потом на 0, результат тот же...

P.S. ...кругом говорят "отключайте куки, они не безопасны"... в то же время читая литературу, пишут что куки - это самое надежное из стандартных решений для сохранения состояния... .... истина где-то рядом...

-------
Человек тонкого ума живет бескорыстными, высокими интересами, его радости - это искусство, любовь, наука, путешествия, книги...


Отправлено: 15:04, 05-09-2006 | #18


Аватара для Prisoner

Engrossed by the Void


Сообщения: 2229
Благодарности: 60

Профиль | Отправить PM | Цитировать


1) Опасность кук - фикция. Что-то из области "обжегшись на молоке на воду дуют". Ну не нравится кому-то, что кто-то (сайты) пишут через кого-то (броузеры) что-то (код кук) на винты их машин. Кому как. То, что это отголосок старых времен - волна недовольства после введения данной технологии, никому почему в голову не приходит. В общем юзайте их, юзайте, но... проверяйте, а вдруг вам повезло и к вам зашел наглухо запечатанный параноик с отрубленными куками, горячей водой, отоплением и светом %).
2) Неопределенная функция session_start() вероятнее всего вызвана компиляцией модуля с опцией --disable-session или --disabled-all. Если не вы администратор хостинга, то обратитесь к его администратору с просьбой пересобрать пакет с поддержкой сессий, это его обязанность. Если же вы, то придется поглядеть в сторону мануалов по сборке моделя php из исходных кодов.

-------
Не могу дать более дельный совет - не хватает системных ресурсов...


Отправлено: 16:19, 05-09-2006 | #19


Аватара для Demiurg

Старожил


Сообщения: 339
Благодарности: 8

Профиль | Сайт | Отправить PM | Цитировать


...вроде нашел... в портах при сборке lang/php5 выбор сборки с поддержкой сессий нет... она валяется в www/php5-session... сейчас скомпилирую и попробую...

-------
Человек тонкого ума живет бескорыстными, высокими интересами, его радости - это искусство, любовь, наука, путешествия, книги...


Отправлено: 16:15, 06-09-2006 | #20



Компьютерный форум OSzone.net » Компьютеры + Интернет » Вебмастеру » пишем примитивный тырнет-магазин : помогите с сессиями в PHP

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Пишем JavaScript перекодировки из кириллицы в латиницу maasja Вебмастеру 16 08-06-2009 22:10
Помогите выбрать после похода в магазин! song73 Выбор отдельных компонентов компьютера и конфигурации в целом 8 12-11-2008 20:26
Разное - помогите с php morgan1991 Вебмастеру 18 26-08-2008 13:06
Структура движка. (Пишем сами...) stone_wings Вебмастеру 18 12-05-2008 14:48
Непонятки с сессиями pauluss Вебмастеру 6 23-10-2004 14:39




 
Переход