Bonsoir à tous,
Je suis entrain de réaliser un site commercial, dans lequel on peut choisir des articles d'une base de données mysql.
On peut ajouter les articles choisis dans un panier.
Jusque la tout va bien, j'arrive à afficher tous mes articles dans une page "panier.php".
J'ai créé une fonction vider_panier qui comme son nom l'indique, vide tout le panier :
function vider_panier()
{
if(isset($_SESSION['panier']))
{
unset($_SESSION['panier']);
}
}
Tout le panier se vide comme prévu, mais dès que je vais sur la page index.php et que je retourne sur la page panier.php, tous les articles de mon paniers sont de retour, alors qu'ils ont été supprimés juste avant.
je vous copie colle tout le code de la page panier.php :
<?php
session_start();
$db_connect = mysql_connect('localhost', 'root', '');
$db = mysql_select_db('site_mencls',$db_connect);
if (!$db)
{
die("<p>La selection de la base $base a échoué -
Fin du programme </p>" ) ;
}
if (isset($_GET['article']))
{
$id = $_GET['article'];
// on crée la requête SQL
$sql = "SELECT id_article, nom_article, prix FROM article WHERE id_article = '".$id."'";
// on envoie la requête
$req = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
}
if(!isset($_SESSION['panier']))
{
$_SESSION['panier'] = array();
$_SESSION['panier']['id_article'] = array();
$_SESSION['panier']['nom_article'] = array();
$_SESSION['panier']['prix'] = array();
}
if(isset($req))
{
while($data = mysql_fetch_assoc($req))
{
array_push($_SESSION['panier']['id_article'], $data['id_article']);
array_push($_SESSION['panier']['nom_article'], $data['nom_article']);
array_push($_SESSION['panier']['prix'], $data['prix']);
}
$nbArticles=count($_SESSION['panier']['id_article']);
if ($nbArticles <= 0)
{
echo "<tr><td>Votre panier est vide </ td></tr>";
}
else
{
for ($i=0 ;$i < $nbArticles ; $i++)
{
echo '<p>'.$_SESSION['panier']['nom_article'][$i].' '.$_SESSION['panier']['prix'][$i].' '.$_SESSION['panier']['id_article'][$i].'</p>';
echo '<p>'.$nbArticles.'</p>';
}
}
}
function vider_panier()
{
if(isset($_SESSION['panier']))
{
unset($_SESSION['panier']);
}
}
echo '<form><input type="submit" value="Vider le panier" onClick=vider_panier()/></form>';
?>
Quelqu'un aurait-il une idée ?
Merci d'avance!