Corsi on-line
Chiudi
Newsletter:
  • Seguici su Facebook
  • Seguici su Twitter
  • Seguici su Google+
  • Seguici via RSS
  • Seguici col tuo Smartphone

Un carrello della spesa con PHP/MySQL

Articolo scritto da Claudio Garau
Pagina 5 di 5

5. Gestione del carrello lato utente

Il file "carrello.php" si occupa della gestione dei contenuti del carrello, grazie ad esso sarà possibile aggiornare il numero dei prodotti acquistati ed eventualmente eliminare quelli che non si desidera più aquistare. Il tutto è ottenuto grazie all'azione di 3 condizioni contenute all'interno di un switch che prevede i casi "aggiungi", "cancella" e "modifica" la cui funzione è intuibile.

(L'articolo continua più sotto...)

Ecco il codice dell'ultimo file della nostra applicazione:

<?php
@session_start();
@require('mysql.php');
@require('config.php');
@require('funzioni.php');

$carrello = $_SESSION['carrello'];
if(@isset($_GET['action']))
{
  $action = $_GET['action'];
  
  switch ($action)
  {
    case 'aggiungi':
    if ($carrello)
    {
      $carrello .= ','.$_GET['id'];
    }else{
      $carrello = $_GET['id'];
    }
    break;

    case 'cancella':
    if ($carrello)
    {
      $prodotti = @explode(',',$carrello);
      $acquisto = '';
      foreach ($prodotti as $prodotto)
      {
        if ($_GET['id'] != $prodotto)
        {
          if ($acquisto != '')
          {
            $acquisto .= ','.$prodotto;
          }else{
            $acquisto = $prodotto;
          }
        }
      }
      $carrello = $acquisto;
    }
    break;

    case 'aggiorna':
    if ($carrello)
    {
      $acquisto = '';
      foreach ($_POST as $key=>$value)
      {
        if (@stristr($key,'quantita'))
        {
          $id = @str_replace('quantita','',$key);
          $prodotti = ($acquisto != '') ? 
          @explode(',',$acquisto) : @explode(',',$carrello);
          $acquisto = '';

          foreach ($prodotti as $prodotto)
          {
            if ($id != $prodotto)
            {
              if ($acquisto != '')
              {
                $acquisto .= ','.$prodotto;
              }else{
                $acquisto = $prodotto;
              }
            }
          }
  
          for ($i=1;$i<=$value;$i++)
          {
            if ($acquisto != '')
            {
              $acquisto .= ','.$id;
            }else{
              $acquisto = $id;
            }
          }
        }
      }
    }
    $carrello = $acquisto;
    break;
  }
}

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

<html>
<head>
<title>Un carrello della spesa con PHP</title>
</head>
<body>
<h1>Carrello in PHP</h1>

<?php
echo usaCarrello();
?>

<h1>Controlla il numero dei prodotti</h1>

<?php
echo mostraCarrello();
?>

<a href="index.php">Torna allo shop</a><br>
</body>
</html
Prima di concludere, ricordiamo che un carrello della spesa non attiene alla transazione monetaria per l'acquisto dei prodotti in esso presenti, ma si limita alla loro raccolta. Questi verranno poi trasmessi allo script che si occupa dei pagamenti e solo lì avverrà la transazione vera e propria. Ma questo dovrà essere l'argomento di un apposito tutorial.

Il lettore potrà implementare lo script proposto in vari modi, ci limiteremo a suggerirne alcuni:

Corsi
Corso LinuxCorso Linux
Guida completa al sistema open-source. A partire da 39 €.
Corso MySQLCorso MySQL
Gestione del database open-source. A partire da 49 €.
Corso PHPCorso PHP
Corso completo per la creazione di siti Web dinamici. A partire da 49 €.
Vedi anche...
Annunci

Mr.Webmaster

Pubblicità
Chi Siamo
Contattaci
Collabora
Note Legali
© 2003 - 2012 Mr.Webmaster - Il portale dei Webmaster Italiani - Tutti i diritti riservati | Powered by IKIweb Internet Media S.r.l. - PIVA 02848390122