Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: php сессии
 
 автор: Onik   (13.05.2010 в 16:55)   письмо автору
 
 

как сохранить несколько значений id?
session_register("id"); но ид много как их все сохранить ?для корзины товара
никак не разберусь подскажите пожалуйста

  Ответить  
 
 автор: cheops   (13.05.2010 в 17:21)   письмо автору
 
   для: Onik   (13.05.2010 в 16:55)
 

Хм... вы зря session_register() используйте, лучше работайте с суперглобальным массивом $_SESSION, в этом случае процесс упорядочивания информации (особенно массивов) выглядит более естественно (да и устарела функция session_register() того гляди удалят из языка).
<?php
  $_SESSION
['id'][] = "345";
  
$_SESSION['id'][] = "355";
  
$_SESSION['id'][] = "365";
?>

  Ответить  
 
 автор: onik   (13.05.2010 в 17:23)   письмо автору
 
   для: cheops   (13.05.2010 в 17:21)
 

<?php
$id = "12";
$id = "358";
$id = "35";

$_SESSION['id'][] = "$id";

так будет работать?)

?>

  Ответить  
 
 автор: sim5   (13.05.2010 в 17:25)   письмо автору
 
   для: onik   (13.05.2010 в 17:23)
 

Не будет, потому как это не корзина. В корзину добавляется от клиента, либо один id товара, либо массив товаров... В общем это механизм, а не просто присвоение.

  Ответить  
 
 автор: onik   (13.05.2010 в 17:35)   письмо автору
 
   для: sim5   (13.05.2010 в 17:25)
 

в том то и дело один товар с id значением добавляет, а другие товары нет. а нужно что бы и остальные товары добавлял в общем у меня получается корзина где можно купить один товар(((

  Ответить  
 
 автор: cheops   (13.05.2010 в 17:37)   письмо автору
 
   для: onik   (13.05.2010 в 17:35)
 

Хм... так почему-бы не воспользоваться массивом?
<?php 
  $_SESSION
['id'][] = "345"
  
$_SESSION['id'][] = "355"
  
$_SESSION['id'][] = "365"
  for(
$i 0$i count($_SESSION['id']); $i++)
  {
    echo 
"Товар N ".$_SESSION['id'][$i]."<br>";
  }
?>

Или, так
<?php
$id 
= array ("12""358""35");

$_SESSION['id'] = $id;
?>

  Ответить  
 
 автор: sim5   (13.05.2010 в 17:44)   письмо автору
 
   для: cheops   (13.05.2010 в 17:37)
 

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

  Ответить  
 
 автор: cheops   (13.05.2010 в 17:49)   письмо автору
 
   для: sim5   (13.05.2010 в 17:44)
 

Конечно. Второй пример, это своеобразный промежуточный мостик, между примером onik и конечным скриптом с использованием $_SESSION. С помещением в корзину я думаю он сам разберется (если такой вопрос у него вообще возникал), тут вопрос именно в использовании массива товаров, которых может быть больше чем один - как их от страницы к странице транспортировать.

  Ответить  
 
 автор: sim5   (13.05.2010 в 18:06)   письмо автору
 
   для: onik   (13.05.2010 в 17:35)
 

Каким образом товары описаны в форме на странице?

  Ответить  
 
 автор: onik   (13.05.2010 в 18:11)   письмо автору
 
   для: sim5   (13.05.2010 в 18:06)
 

Наименование | кол-во | Цена | <input type="submit" name="<?php echo "$row[id]";?>" value="В корзину">
пользователь так же сам указывает цену по каторой он хочет купить

  Ответить  
 
 автор: sim5   (13.05.2010 в 18:16)   письмо автору
 
   для: onik   (13.05.2010 в 18:11)
 

Значит не очень удобно выбрано описание товара, если пользователь указывает приемлемую цену. Это раз.
type="submit" name="<?php echo "$row[id]";?>" value="В корзину" - это вообще несуразица, если речь идет о возможности выбора нескольких товаров (массив товаров от клиента). Кнопка SUBMIT должна быть одна и для одной формы описывающей N-товаров. Это два.

  Ответить  
 
 автор: onik   (13.05.2010 в 18:59)   письмо автору
 
   для: sim5   (13.05.2010 в 18:16)
 

почему не удобно? нормально
лишь бы с корзиной разобраться, а массивы вообще не понимаю как они работают никак не доходит.

может быть кто нибудь поможет пусть даже за маленькое вознограждение ?
ася 230-471-241

  Ответить  
 
 автор: sim5   (13.05.2010 в 18:59)   письмо автору
 
   для: onik   (13.05.2010 в 18:59)
 

Ну коли вы считате, что удобно, тогда успехов.

  Ответить  
 
 автор: cheops   (13.05.2010 в 19:09)   письмо автору
 
   для: onik   (13.05.2010 в 18:59)
 

С массивами придется разобраться - у вас однотипные данные: номера товарных позиций - и их нужно обрабатывать в группе - тут никак без массивов не обойтись, только разве свои выдумать :)))

  Ответить  
 
 автор: sim5   (13.05.2010 в 18:59)   письмо автору
 
   для: Onik   (13.05.2010 в 16:55)
 

У меня нет аськи. Что мешает задавать вопросы здесь?

  Ответить  
 
 автор: Рома   (13.05.2010 в 19:35)   письмо автору
 
   для: sim5   (13.05.2010 в 18:59)
 

Хоть у кого то нет аськи, я думал я один ей не пользуюсь)

  Ответить  
 
 автор: onik   (13.05.2010 в 19:52)   письмо автору
 
   для: Рома   (13.05.2010 в 19:35)
 

вопрос все тот же (

<?php

$_SESSION['id'][] = "$id";
for($i = 0; $i < count($_SESSION['id']); $i++)
{
echo "Товар N ".$_SESSION['id'][$i]."<br>";
}
?>

Или, так
<?php
$id = array ("$id");

$_SESSION['id'] = $id;
?>
тож не работает(
?>

  Ответить  
 
 автор: sim5   (13.05.2010 в 20:01)   письмо автору
 
   для: onik   (13.05.2010 в 19:52)
 

Какой $_SESSION['id'][] = "$id"? У вас кнопка SUBMIT передает id товара, по которому вы ориентируетесь:
1. Имена html-объектов на странице, как и имена элементов формы, должны начинаться с буквы.
2. Если это и опустить, то вы получите на сервер один id, о каком массиве может идти речь.

Подумайте о своей форме сперва, а уже потом о корзине.

  Ответить  
 
 автор: Valick   (13.05.2010 в 19:55)   письмо автору
 
   для: Рома   (13.05.2010 в 19:35)
 

я прочитал пару заклинаний и зло аська вернулось

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования