bonsoir,j'ai un code sur le quelle je travail depuis un moment et chaque fois je m'aperçoit une erreur,mon problème réside dans le fait que je veux bloquer les boutons qui incrémentent et décrémentent la quantité demandée d'un article lorsque je clique sur valider,tout se passe bien si j'ai un seul article dans le panier mais si jamais j'ajoute de plus les boutons s'affichent.le code est le suivant:
<?php
include_once 'panier.class.php';
/*************************************************************************************************
** déclarations variables **
*************************************************************************************************/
$contenu = "";
$page = null;
/*************************************************************************************************
** affectations variables **
*************************************************************************************************/
$page->maj = isset($_POST["maj_x"]) ? $_POST["maj_x"] : "";
$page->base = ((isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") ? "https" : "http")."://".$_SERVER["HTTP_HOST"];
$page->dirname = dirname($_SERVER["SCRIPT_NAME"]);
$page->query = isset($_SERVER["QUERY_STRING"]) ? "?".$_SERVER["QUERY_STRING"]."" : "";
$page->protocol = (isset($_SERVER["HTTPS"]) && $_SERVER["HTTPS"] == "on") ? "https" : "http";
$page->action = $page->protocol."://".$_SERVER["HTTP_HOST"].$_SERVER["SCRIPT_NAME"].$page->query;
$page->panier = isset($_SESSION['panier']) ? unserialize($_SESSION['panier']) : "";
/*************************************************************************************************
** programme principal **
*************************************************************************************************/
if ($page->maj) {
maj($page);
$showHide = 1; //on doit maintenant afficher commander
} else {
$showHide = 0; // on doit afficher valider
}
// si on doit afficher commander on cree une variable $code qui va contenir le code du javascript
// permettant d'afficher le bouton "commande" et de cacher le bouton "valider"
// sinon on crée une variable $code qui permet de faire le contraire
if ($showHide) {
$code ="javascript:
document.getElementById('maj').style.display='none';
document.getElementById('com').style.display='block'
document.getElementById('plus').style.display='none'
document.getElementById('minus').style.display='none'
document.getElementById('suupp').disabled='true';";
} else {
$code ="javascript:
document.getElementById('maj').style.display='block';
document.getElementById('com').style.display='none';";
}
echo '
<html>
<head>
<title>Consultation Panier</title>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
<script language="JavaScript" type="text/JavaScript">
function check() {
'.$code.';
}
</script>
</head>
<body onLoad="javascript:check();">
<form name="form1" method="post" action="'.$page->action.'" enctype="application/x-www-form-urlencoded">';
$contenu .= Affichages($page);
echo $contenu.'
</form>
</body>
</html>';
$_SESSION["panier"] = serialize($page->panier);
/*************************************************************************************************
** fonctions **
*************************************************************************************************/
// affichage principal
function Affichages(&$page) {
if ($page->panier == "" || (is_object($page->panier) && $page->panier->getNombreArticle() <= 0)) return '<br /><center><h2>Votre panier est vide</h2></center>';
$out = '
<center>
<br />
<table border="0" cellspacing="0" cellpadding="0" width="80%" bgcolor="white">
<tr bgcolor="#FCAA34">
<td align="left" class="titrecell"><b>Designation</td>
<td align="right" class="titrecell"><b>P.U. (HT)</td>
<td align="right" class="titrecell"><b>Quantite</td>
<td align="right" class="titrecell"><b>Total HT</td>
<td align="right" class="titrecell"><b>Total TTC</td>
<td align="right" class="titrecell"><b>Supprimer</td>
</tr>';
foreach ($page->panier->article as $numserie => $val) {
$des1=str_replace(' ','',$numserie);
$des=str_replace('-','',$des1);
$out .= '
<tr bgcolor="#DAD9D7">
<td>'.$des.'</td>
<td align="right">'.$page->panier->getPrixArticle($numserie).' DT</td>
<td align="right">
<table cellpadding="0" cellspacing="0" border="0">
<tr valign="middle">
<td><input type="text" name="qte_'.$numserie.'" value="'.$page->panier->getQteArticle($numserie).'" readonly size="4" /></td>
<td><a href="#" onclick="document.form1.qte_'.$numserie.'.value++;return false"><img id="plus" src="images/plus.gif" width="14" height="10" border="0" hspace="0" vspace="0"/></a><br /><a href="#" onclick="if(document.form1.qte_'.$numserie.'.value>1){document.form1.qte_'.$numserie.'.value--;return false}"><img id="minus" src="images/moins.gif" width="14" height="10" border="0" hspace="0" vspace="0" /></a></td>
</tr>
</table>
</td>
<td align="right" class="intitule">'.$page->panier->getMontantArticle($numserie).' DT</td>
<td align="right" class="intitule">'.$page->panier->getMontantTTCArticle($numserie).' DT</td>
<td align="right" class="intitule"><input type="checkbox" name="suppr_'.$numserie.'" id="suupp"/></td>
</tr>';
}
$out .= '
<tr bgcolor="#DAD9D7">
<td colspan="6"></td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="5" align="right" class="Style1">Sous-Total HT :</td>
<td align="right" class="intitule">'.$page->panier->getTotalHT().' DT</td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="5" align="right" class="Style1">Total HT :</td>
<td align="right" class="intitule">'.$page->panier->getTotalFinalHT().' DT</td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="5" align="right" class="Style1">TVA ('.$page->panier->getTVA().' %) :</td>
<td align="right" class="intitule">'.$page->panier->getTotalFinalTVA().' DT</td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="5" align="right"><b>Total TTC :</b></td>
<td align="right" class="intitule"><b>'.$page->panier->getTotalFinalTTC().' DT</b></td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="6"><center><hr width="20%"/></center></td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="6" align="center"><input type="image" name="maj" id="maj" src="images/valider.gif"/><a href="http://127.0.0.1/Projet/panier/commande.php"><input type="hidden" name="tot" value='.$page->panier->getTotalFinalTTC().'><input type="image" id="com" name="com" src="images/commander.gif" /></a></td>
</tr>
<tr bgcolor="#DAD9D7">
<td colspan="6"><center><hr width="20%"/></center></td>
</tr>
</table>
</center>';$_SESSION["tot"] = $page->panier->getTotalFinalTTC();
return $out;
}
function maj(&$page) {
foreach ($_POST as $cle => $valeur) {
if (preg_match("/suppr_(.*)/", $cle, $res)) $page->panier->supprimerArticle($res[1]);
if (preg_match("/qte_(.*)/", $cle, $res)) $page->panier->miseAJourQteArticle($res[1], $valeur);
}
if ($page->panier->getNombreArticle() <= 0) {
$page->panier->destroy();
$page->panier = null;
}
}
?>