zadeklarowalam w jednym z plikow nastepujacy kod
<?php
public function GetProducts($cartProductsType, $cartId)
{
// jeżeli pobieramy produktu dodane "na teraz"...
if ($cartProductsType == GET_CART_PRODUCTS)
{
$query_string =
"SELECT product.product_id, product.name,
product.price, shopping_cart.quantity,
product.price * shopping_cart.quantity AS subtotal
FROM shopping_cart INNER JOIN product
ON shopping_cart.product_id = product.product_id
WHERE shopping_cart.cart_id = '$cartId'
AND when_to_buy='now'";
}
// jeżeli pobieramy produkty zachowane "na póĽniej"...
elseif ($cartProductsType == GET_CART_SAVED_PRODUCTS)
{
$query_string =
"SELECT product.product_id, product.name, product.price
FROM shopping_cart INNER JOIN product
ON shopping_cart.product_id = product.product_id
WHERE shopping_cart.cart_id = '$cartId'
AND when_to_buy='later'";
}
else
trigger_error("wartość $cartProductsType nieznana", E_USER_ERROR
); return $this->dbManager->DbGetAll($query_string);
}
?>
jest on wczytywany w index.php
jest to czesc klasy prywatnej
chce go wykorzystac do wyswietlania produktow
GET_CART_PRODUCTS do produktow aktualnie wlozonych do koszyka a GET_CART_SAVED_PRODUCTS do produktow odlozonzch na pozniej do tzw. przechowalni
robie to za pomoca nastepujacego skryptu
<?php
// nazwy funkcji zapisane w plikach modułów dodatków muszą mieć składnię: smarty_t
yp_nazwa
function smarty_function_load_cart_summary($params, $smarty)
{
$cart_summary = new CartSummary();
// zdefiniowanie zmiennej assign szablonu
$smarty->assign($params['assign'], $cart_summary);
}
// klasa zarządzająca zliczaniem wartości koszyka
class CartSummary
{
public $mTotalAmount;
public $mItems;
function __construct()
{
// powołanie obiektu warstwy pośredniej
$shopping_cart = new BoShoppingCart();
// obliczanie sumarycznej wartości produktów znajdujących się w koszyku
$this->mTotalAmount = $shopping_cart->GetTotalAmount();
// pobierz produkty znajdujące się w koszyku
$this->mItems =
$shopping_cart->GetCartProducts(GET_CART_PRODUCTS);
if (empty($this->mItems)) $this->mEmptyCart = true;
else
$this->mEmptyCart = false;
}
}
?>
generuje to blad
uzycie niezadeklarowanej stalej
jak zadeklarowac te stale tak zeby byly tylko te dwie mozliwosci??
Jak bobrze zadeklarować te stałe żeby GetCartProducts mogło mieć wartość GET_CART_PRODUCTS lub GET_SAVED_CART_PRODUCTS??
Ten post edytował jessica99 29.07.2007, 20:45:02