sa m'en ajoute par 3 ?
j'utilisee une class que je développe...
[php]<?php
#########################################################################################################
////////////////////////////////// /************************************************/ #
// # # // /* ***** class par Xavier Artot alias x@v */ #
// # ## // /* *****
[email protected] ****************/ #
// ### ##### // /* ***** Ma première classe en php ********/ #
// # ### ####### // /* ***** cette classe permet d'avoir un ***/ #
// ######## # // /* ***** panier ou cadie pour un site *****/ #
// ####### // /* ***** vous êtes conviés à laisser ******/ #
// # ######### // /* ***** ce commentaire *******************/ #
// ###### ### # // /* ***** developpus.com *******************/ #
// ### ### // /* ***** developpus.com *******************/ #
// # # // /* ***** developpus.com *******************/ #
// ### // /* ***** developpus.com *******************/ #
// ####### ## // /* ***** developpus.com *******************/ #
// ######### #### // /************************************************/ #
// ## ## # ## // #
// # ## # // #
// ## # ## // #
// ############### // #
// ############## // #
// # // #
// // #
// # // #
// ### // #
// ####### // #
// ########## // #
// ########## // #
// ######## // #
// ### // #
// #### # // #
// #### // #
// # // #
////////////////////////////////// #
#########################################################################################################
require_once('class.pdo.php');
class Panier
{
private $caddie;
private $connect;
public function __construct()
{
session_start();
// chargement du caddie
if (isset($_SESSION['caddie']))
$this->caddie = $_SESSION['caddie'];
else
$this->caddie = array();
}
// ajoute un formulaire avec le nom et nombre d'article comme variable, grenade comme le fruit ;)
public function setFormulaireAjout($nombreGrenade, $grenade)
{
if (isset($_GET[$grenade]))
{
if(isset($_GET[$nombreGrenade]))
{
$this->caddie[$grenade] =0;
$this->caddie[$grenade] += $_GET[$nombreGrenade];
}
else
$this->caddie[$grenade] += $_GET[$nombreGrenade];
$_SESSION['caddie'] = $this->caddie;
//header('Location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?cat='.$_GET['cat']);
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'];?>" method="GET">
<?php // name="cat" envoie la variable $_GET['cat'] dans le header()?>
<input type="hidden" name="cat" value="<?php echo $_SESSION['idCategorie'];?>" />
<?php //echo 'Nombre de '.$grenade;?>
<select name="<?php echo $nombreGrenade;?>">
<?php for($i=1; $i<=20; $i++)
echo '<option value="'.$i.'">'.$i.'</option>';?>
</select>
<input type="hidden" name="<?php echo $grenade;?>" value="<?php echo $grenade;?>" />
<input type="submit" />
</form><?php
}
///////////////////////////////////
public function setPlusIncremente($grenade)
{
if (isset($_GET['incremente']))
{
switch ($_GET['incremente'])
{
case $grenade : ++$this->caddie[$grenade];
break;
}
$_SESSION['caddie'] = $this->caddie;
header('Location: '.$_SERVER['PHP_SELF'].'?cat='.$_GET['cat']);
exit();
}
?>
<a href="<?php echo $_SERVER['PHP_SELF'];?>?cat=<?php echo $_SESSION['idCategorie'];?>&incremente=<?php echo $grenade;?>">
<?php echo $nom;?> +
</a><?php
}
public function setPlusDecremente($grenade)
{
if (isset($_GET['achat']))
{
switch ($_GET['achat'])
{
case $grenade : --$this->caddie[$grenade];
break;
}
$_SESSION['caddie'] = $this->caddie;
header('Location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']);
exit();
}
?>
<a href="<?php echo $_SERVER['PHP_SELF'];?>?cat='.$_SESSION['idCategorie']&retire=<?php echo $grenade;?>">
<?php echo $grenade;?> -
</a><?php
}
public function detruitPanier()
{
if ($_SESSION['caddie'] != '')
{
if (isset($_GET['action']) && !empty($_GET['action']))
{
session_destroy();
header('Location: http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'].'?cat='.$_SESSION['idCategorie']);
exit();
}
echo 'Vous avez '.count($_SESSION['caddie']).' articles<br />';
echo '<a href="'.$_SERVER['PHP_SELF'].'?cat='.$_SESSION['idCategorie'].'&action=detruit">vider le panier</a>';
}
else
print ('Votre caddie est déserpérément vide !!!!');
}
public function visionnePanier()
{
if ($_SESSION['caddie'] != '')
{
foreach ($_SESSION['caddie'] as $key => $val)
{
echo '<p>'.$key.' '.$val.'</p>';
}
}
else
{
exit('Votre caddie est déserpérément vide !!!!');
}
}
public function suprimeEntreeDansPanier($idSession)
{
$search_array =$_SESSION['caddie'];
if (array_key_exists($_GET['suprimer'], $search_array))
{
$supr=$_GET['suprimer'];
unset($_SESSION['caddie'][$supr]);
header('Location: ./redirectionPanier.php');
}
echo '<a href="'.$_SERVER['PHP_SELF'].'?suprimer='.$idSession.'">Suprimmer</a>';
}
public function getCategorie(Connection $connect)
{?>
<?php
echo '<ul id="categorie">';
$this->connect=$connect;
$sql= "SELECT * FROM categorie";
$result = $this->connect->select($sql);
foreach ($result as $row)
{
$categorie=$row['nom'];
$id=$row['id'];
$description=$row['description'];
echo '<li><a href="produit.php?cat='.$id.'" title="'.$description.'">'.$categorie.'</a></li>';
}?>
</ul><?php
}
}
?>[/php]