помогите с корзиной пожалуйста
Страницы: 1
помогите с корзиной пожалуйста
помогите с php
Есть скрипт корзины в интернет магазине. Хотелось бы добавить в него функцию выбора региона доставки и вывода суммы в соответствии выбранным регионом. И соответственно функцию пересчета общей стоимости покупки. Может кто пример хотя бы покажет, может сам разберусь. Всем спасибо.
Your way -- Drupal Way
может скрипт хоть выложишь? а то каждый по разному пишет, и я сомневаюсь, что если ты этого написать не можешь, то разобраться сможешь
smile:D Интересный народ ... Собсна, я Вам дал намёк на чём это проще всего реализовать -- остальное дело ваше.
Цитата
Joker пишет:
Интересный народ ... Собсна, я Вам дал намёк на чём это проще всего реализовать -- остальное дело ваше.


Уже качаю, а вот собственно код:

<?php
if (isset($_GET["shopping_cart"]) || isset($_POST["shopping_cart"]))
{

if (isset($_GET["add2cart"]) && $_GET["add2cart"]>0) //add product to cart with productID=$add
{

$q = db_query("sel ect in_stock fr om ".PRODUCTS_TABLE." where productID='".$_GET["add2cart"]."'") or die (db_error());
$is = db_fetch_row($q); $is = $is[0];

//$_SESSION[gids] contains product IDs
//$_SESSION[counts] contains product quantities ($_SESSION[counts][$i] corresponds to $_SESSION[gids][$i])
//$_SESSION[gids][$i] == 0 means $i-element is 'empty'
if (!isset($_SESSION["gids"]))
{
$_SESSION["gids"] = array();
$_SESSION["counts"] = array();
}
//check for current item in the current shopping cart content
$i=0;
while ($i<count($_SESSION["gids"]) && $_SESSION["gids"][$i] != $_GET["add2cart"]) $i++;
if ($i < count($_SESSION["gids"])) //increase current product's quantity
{
$_SESSION["counts"][$i]++;
}
else //no item - add it to $gids array
{
$_SESSION["gids"][] = $_GET["add2cart"];
$_SESSION["counts"][] = 1;
}

header("Location: index.php?shopping_cart=yes");

}

if (isset($_GET["remove"]) && $_GET["remove"] > 0) //remove fr om cart product with productID == $remove
{
$i=0;
while ($i<count($_SESSION["gids"]) && $_SESSION["gids"][$i] != $_GET["remove"]) $i++;
if ($i<count($_SESSION["gids"])) $_SESSION["gids"][$i] = 0;

header("Location: index.php?shopping_cart=yes");
}

if (isset($_POST["update"])) //update shopping cart content
{

foreach ($_POST as $key => $val)
if (strstr($key, "count_"))
{
//sel ect product's in stock level
$q = db_query("select in_stock fr om ".PRODUCTS_TABLE." wh ere productID='".str_replace("count_","",$key)."'") or die (db_error());
$is = db_fetch_row($q); $is = $is[0];

if ($val > 0)
{
for ($i=0; $i<count($_SESSION["gids"]); $i++)
{
if ($_SESSION["gids"][$i] == str_replace("count_","",$key))
{
$_SESSION["counts"][$i] = floor($val);
}
}
}
else //remove
{
$i=0;
while ($_SESSION["gids"][$i] != str_replace("count_","",$key) && $i<count($_SESSION["gids"])) $i++;
$_SESSION["gids"][$i] = 0;
}
}

header("Location: index.php?shopping_cart=yes");

}

if (isset($_GET["clear_cart"])) //completely clear shopping cart
{
//clear cart
unset($_SESSION["gids"]);
unset($_SESSION["counts"]);

header("Location: index.php?shopping_cart=yes");
}



//shopping cart items count
$c = 0;
if (isset($_SESSION["gids"]))
for ($j=0; $j<count($_SESSION["gids"]); $j++)
if ($_SESSION["gids"][$j]) $c += $_SESSION["counts"][$j];

//not empty?
if (isset($_SESSION["gids"]) && $c)
{
$k = 0; //total cart value
$products = array();
for ($i=0; $i<count($_SESSION["gids"]); $i++)
if ($_SESSION["gids"][$i])
{
$q = db_query("SELECT name, Price, product_code FR OM ".PRODUCTS_TABLE." WH ERE productID='".$_SESSION["gids"][$i]."'") or die (db_error());
if ($r = db_fetch_row($q))
{
$tmp = array("id"=>$_SESSION["gids"][$i], "name"=>$r[0], "quantity"=>$_SESSION["counts"][$i], "cost"=>show_price($_SESSION["counts"][$i]*$r[1]), "product_code"=>$r[2]);

$products[] = $tmp;

$k += $_SESSION["counts"][$i]*$r[1];
}
}

//total...
$smarty->assign("cart_content", $products);
$smarty->assign("cart_total", show_price($k));

}
else
{
$smarty->assign("cart_total", "");
}

$smarty->assign("main_content_template", "shopping_cart.tpl.html");


}
?>
И?
Цитата
Joker пишет:
И?
Что? Чет не то выложил?
Вижу обвязку функционала с выхлопом на смарти ))) Что вы хотели услышать по поводу? Я такими шнягами уже давно стараюсь не работать ...
То о чем Вы просите это не 2-3 строчки кода добавить. В серьезных ИМ такие функции есть по дефолту.
Страницы: 1
Похожие темы:
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Новые темыОбъявленияСвободное общение
16:45 Adfinity - Ваш надежный партнер в монетизации трафика 
15:05 Gambling Craft - гемблинг по белому 
19:35 Парсят сай до ddos 
16:02 DreamCash.tl - заработок на онлайн-видео. До 95% отчислений, отличный конверт! 
11:51 Ходяга(АнтиМинусинск) - программа для проклика ссылок, генерации поискового и соц.трафика, улучшения ПФ 
14:39 AviTool - мощный инструмент для автоматизации работы с Avito 
11:36 Dao.AD: Монетизация и покупка Push/Pops/Inpage и Video трафика! 
20:46 BestX24 - быстрый и безопасный обменник криптовалют и электронных денежных средств 
19:22 USMobileSMSBot - 
17:30 Обменный пункт cashalot.one. Выгодный обмен. 
14:51 Sapfirex.com - Современный сервис обмена криптовалют 
14:37 Sectormoney.com - быстрый и удобный обменник 
10:55 Аккаунт Пикабу 
17:49 BIGPROXY.SHOP - Резидентные Ротационные Backconnect Proxy USA EUROPA MIX [Безлимитный трафик] 
22:07 Точные прогнозы на футбол 
20:09 Сколько сейчас стоит наполнение ИМ? 
12:43 Куплю проигрышные букмекерские аккаунты 
04:33 Половина скидок на распродажах — фейк 
07:53 НейроБабушка наказывает мошенников 
19:59 Осталось 3-5 месяцев до блокировки YouTube в России, — заявил Клименко 
19:57 Пятница 13-ое: VK принял радикальное решение и закрыл доступ к порно контенту