Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: cоздать массив и поместить его в сессию, пoдскажите
Покинул форум
Сообщений всего: 116
Дата рег-ции: Июль 2009
Помог: 0 раз(а)
через форму с помощью checkbox передается неопределенное значение параметров, как выбрать из БД нужные столбцы по количеству переданных значений checkbox и id разным значениям checkbox и выбранные значения массивом поместить в сессию?
for ($i=0; $i<count($_SESSION['id_service']); $i++)
{
$service = "SELECT * FROM service WHERE id=".$_SESSION['id_service'][$i];
$service_query = mysql_query("$service");
while ($service_select = mysql_fetch_assoc($service_query))
{
echo $service_select['service'];
echo $service_select['price'];
}
}
а вот как $service_select['service'] и $service_select['price'];
поместить в соответствующие массивы $_SESSION['service'] и $_SESSION['price'], чтоб их потом можно было разобрать по элементам, не получается
помещает только последнюю выбранную запись и все
Viper
Отправлено: 26 Августа, 2009 - 15:30:05
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
у вас mysql не загнется от такого? представьте в $_SESSION приедет 1000 id и в этот момент страницу обновят 10 юзверей. 10*1000=10000 запросов.
получите все id из переменной сессии. затем составьте строку вида id1,id2,id3,id4,id5
Покинул форум
Сообщений всего: 116
Дата рег-ции: Июль 2009
Помог: 0 раз(а)
Nestor пишет:
Первая страница - создали запись в бд, все последующие страници - дополнение этой записи.
и насколько это оптимальнее, а если вернуться на шаг назад, чтоб подправить данные?
Viper
Отправлено: 28 Августа, 2009 - 08:11:19
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
sc2r2bey пишет:
и насколько это оптимальнее, а если вернуться на шаг назад, чтоб подправить данные?
это не оптимально, это правильно.
если юзверь на странице 2 никаких данных не изменял то просто возвращаем его на первую страницу. а если изменял, делаем UPDATE и возвращаем.
Покинул форум
Сообщений всего: 116
Дата рег-ции: Июль 2009
Помог: 0 раз(а)
а как поймем, что он менял или не менял данные?
Viper
Отправлено: 28 Августа, 2009 - 13:54:47
Активный участник
Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007 Откуда: Симферополь
Помог: 98 раз(а)
sc2r2bey пишет:
а как поймем, что он менял или не менял данные?
ну смотрите. на второй странице делаете button. если юзер что-то поменял то в $_POST приедут уже другие данные чем были при первой загрузке страницы. к тому же если юзер нажмет в браузере кнопку Назад или Backspace на клаве, то браузер все равно спросит переотправить ли данные.
если не хотите возиться с формами, то можно вообще отправку на ajax сделать. в этому случае можно принудительно отправлять данные без каких либо запросов.
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.