Esta pergunta é tão antiga quanto a pergunta se a galinha ou ovo veio primeiro.

Então, salvar no banco de dados ou na sessão e por quê?

A resposta é simples. Banco.

Vamos dizer que você tenha uma classe para gerenciar o carrinho de compras e já tem um método para calcular o preço do pedido. Algo parecido como:

class Cart
{
    /**
     * @var float
     */
    private $totalPrice;

    /**
     * @return float
     */
    public function getTotalPrice()
    {
        return $this->totalPrice;
    }
}

Então, esta mesma classe podes usar no carrinho, para mostrar o histórico de compras, para apresentar a venda, para enviar o e-mail com o pedido, e aqui para gerenciar os itens quando o seu cliente esta comprando. Ao adicionar um item ao carrinho, podes simplesmente chamar o $cart->getTotalPrice() que já tens o preço total.

Só por isso Kraus?

Não... Imagina que seu cliente pede, após um mês sistema no ar (sim, acontece todo dia, e tens que estar sempre esperando por isso), um sistema de cupons de desconto e você precisa atualizar o carrinho. Então se você salva o carrinho sessão, tens dois locais para alterar. Se estas no banco, só a classe precisa ser alterado.

class Cart
{
    /**
     * @var float
     */
    private $totalPrice;

    /**
     * @var float
     */
    private $discountAmount;

    /**
     * @return float
     */
    public function getTotalPrice()
    {
        return $this->totalPrice - $this->discountAmount;
    }

    /**
     * @return float
     */
    public function getDiscountAmount()
    {
        return $this->discountAmount;
    }

    /**
     * @param float $discountAmount
     */
    public function setDiscountAmount( $discountAmount )
    {
        $this->discountAmount = $discountAmount;
    }
}

E...

A complexidade do seu código vai influenciar na quantidade de bugs que seu sistema tem. Então quanto menos códigos, menos bugs.

E não se esqueça que sites mais rápidos criar usuários felizes, e sites mais rápidos aumenta as chances da venda ser concretizada e a hospedagem é um dos fatores também.

Gostou? Não esqueça de curtir!

5 comentários

Deixe uma resposta

  1. já tô na tua cola hein safado..vai morrer desgraçado..só tirão nessa tua cara feia.. seu arrombado

     
  2. Eu salvo no Cookie, acho mais rápido.

     
  3. Também salvo tudo no banco.

     
  4. Só por vários lugares para alterar?