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

Форум PHP

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

 

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

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

тема: Поиск в массиве
 
 автор: zavragnov   (16.04.2007 в 16:46)   письмо автору
 
 

Задача такая. Как определить сушествуют ли значения в массиве по двум ключам.

Это скрипт добавления товара в корзину. Он работает, но некоректно. Если изменить значения ключа "kol" (он отвечает за колличество выбранного товара), то товар добавиться. И появится дубликат товара, но с другим колличеством, в данном случае равном одному.


if(@in_array(array( "tov" => $_GET['tov'],  "i_price" => $_GET['i_price'],  "kol" => "1"), $_SESSION['basket_add'])) //
    {
    echo "<b>уже в корзине</b><br>";
    }
    else
    {
    $_SESSION['basket_add'][] = array( "tov" => $_GET['tov'],  "i_price" => $_GET['i_price'],  "kol" => "1");
    echo "<b>Добавлено в корзину</b><br>";
    }

   
 
 автор: Trianon   (16.04.2007 в 16:56)   письмо автору
 
   для: zavragnov   (16.04.2007 в 16:46)
 

>Задача такая. Как определить сушествуют ли значения в массиве по двум ключам.

Индексируйте массив одним ключом - кодом товара.

   
 
 автор: zavragnov   (16.04.2007 в 17:18)   письмо автору
 
   для: Trianon   (16.04.2007 в 16:56)
 

>Индексируйте массив одним ключом - кодом товара.

Нельзя!!

Так как "tov" и есть ключ товара, а "i_price" это ключ цены.
Поясню Это магазин с несколькими ценами на один товар (точнее нет ограничений на кол-во цен на одну позицию)

Типа


Коньяк Ани

цена за 0.5 - 1000 руб. 
цена за 0.75 - 1500 руб.
цена за 1 - 2000 руб.




соответственно "kol" - это колличество выбранного по данной позиции и данной цене

   
 
 автор: Trianon   (16.04.2007 в 17:35)   письмо автору
 
   для: zavragnov   (16.04.2007 в 17:18)
 

Сформируйте составной ключ.


$key = $_GET['tov'] .'_'.$_GET['i_price];
if(!isset($_SESSION['basket_add'][$key]))
    $_SESSION['basket_add'][$key] = 1;
else 
    ++$_SESSION['basket_add'][$key];

   
Rambler's Top100
вверх

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