bonjour, j'ai un probleme pour integrer ce script qui me parait excellent mais je me casse les dents une erreure de ma part trés trés certainement, ;-)
1ere partie j'aurais ceci à integrer:
[cmd]
<?php
/*
NOTES / explications :
variables panier sous la forme : $_SESSION['panier'][reference][array(designation=>blabla,prixht=>blabla,quantite=>blabla);
Anti reload :
Afin de protéger le panier d'une incrémentation lors d'un reload de la page ou d'un prec/suiv, chaque chargement du formulaire
est identifié avec un ID unique ($_POST['panier_lock']) qui est également enregistré dans une variable de session ($_SESSION['panier_lock'])
Ces deux variables sont ensuite comparées à l'arrivée sur la page panier. Si elles sont identiques, l'article est ajouté, puis la variable
de session est détruite en fin de script.
*/
session_start();
$tot_ht=0; // montant total HT
if (!isset($_SESSION['panier'])) $_SESSION['panier']=array();
if (isset($_POST['ref']) && isset($_SESSION['panier_lock']) && isset($_POST['panier_lock'])) { // si il s'agit de l'ajout d'un article et que la page n'a pas déjà été appellée
// un peu de sécurité
$prixht=$_POST['prixht'];
settype($prixht,"float");
$ref=strip_tags($_POST['ref']);
$quantite=$_POST['quantite'];
settype($quantite,"int");
if ($prixht==0) $quantite=0;
// protection reload
if ($_POST['panier_lock']===$_SESSION['panier_lock']) {
$panier_lock=true; // autorise la modification du panier
} else {
$panier_lock=false; // interdit la modification du panier
}
if ($panier_lock==true) { // autorisation ajout panier
if (array_key_exists($ref, $_SESSION['panier'])) { // la ref existe déjà dans le panier
$_SESSION['panier'][$ref]['quantite']+=$_POST['quantite']; // ajout de la quantité à celle existante pour le même article
} else { // la ref n'est pas encore présente dans le panier, on l'ajoute
$_SESSION['panier'][$ref]['designation'] = $_POST['designation'];
$_SESSION['panier'][$ref]['prixht'] = $prixht;
$_SESSION['panier'][$ref]['quantite'] = $_POST['quantite'];
}
}
}
if (count($_SESSION['panier'])) { // si le panier n'est pas vide
echo'
<style type="text/css">
<!--
body,td,th {
color: #006699;
}
body {
background-image: url(../design/styles/fond.gif);
}
-->
</style>
<link href="../design/styles/styles.css" rel="stylesheet" type="text/css"><div align="center">
<table width="800px" border="1" bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<tr bordercolor="#BDDFE1" bgcolor="#BDDFE1" class="menugauche">
<td width="20%">Reference</td>
<td width="20%" bordercolor="#BDDFE1">Description</td>
<td width="20%">Quantité</td>
<td width="20%">Prix HT € unitaire </td>
<td width="20%">Total HT € </td>
</tr>
</table>
<table width="800px" border="1" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
';
foreach($_SESSION['panier'] as $key => $value) { // pour chaque éléments du panier
echo '<tr>
<td width="20%">'.$key.'</td>
<td width="20%">'.$_SESSION['panier'][$key]['designation'].'</td>
<td width="20%">'.$_SESSION['panier'][$key]['quantite'].'</td>
<td width="20%">'.$_SESSION['panier'][$key]['prixht'].'</td>';
$tot_line=$_SESSION['panier'][$key]['quantite'] * $_SESSION['panier'][$key]['prixht']; // total HT / ref
$tot_ht +=$tot_line; // calcul le montant total HT du panier
echo '<td width="20%">'.number_format(round($tot_line,2), 2, '.', ' ').'</td>
</tr>';
}
echo '<tr><td colspan="4">Montant total HT de votre commande (€)</td><td width="13%">'.number_format(round($tot_ht,2), 2,'.', ' ').' €</td></tr></table>';
} else {
echo 'Votre panier ne contient aucun article.'; // le client n'a pas d'article dans son panier
}
unset($_SESSION['panier_lock']); // enclenche le verrouillage
?><head><script language="javascript">
<!--
function calculette ()
{
var total=0;
if (caddie.achat1.checked)
total+=0;
if (caddie.achat2.checked)
total+=6;
if (caddie.achat3.checked)
total+=370;
caddie.Total.value=total+" €";
}
//-->
</script></head>
<style type="text/css">
<!--
.Style2 {color: #006699; font-weight: bold; font-size: 12px; font-family: Geneva, Arial, Helvetica, sans-serif; }
-->
</style>
<link href="../design/styles/styles.css" rel="stylesheet" type="text/css">
<style type="text/css">
<!--
.Style4 {font-size: 12px; font-style: normal; line-height: normal; font-variant: normal; text-transform: capitalize; color: #9DBEC5; letter-spacing: normal; text-align: center; vertical-align: baseline; word-spacing: normal; white-space: normal; font-family: Verdana, Arial, Helvetica, sans-serif;}
.Style5 {font-size: 12px; font-style: normal; line-height: normal; font-variant: normal; text-transform: Aucune; color: #006699; letter-spacing: normal; text-align: center; vertical-align: baseline; word-spacing: normal; white-space: normal; background-position: center center; font-family: Geneva, Arial, Helvetica, sans-serif;}
.class {color: #036; font-size: 12px; font-family: Verdana, Arial, Helvetica, sans-serif }
.Style6 {font-size: 2px}
-->
</style>
<title>CSTA</title><div align="center">
<table width="800" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td><div align="right"><a href="javascript:history.go(-1)" class="Style2">Poursuivre ma Commande</a><img src="../design/img/panier.jpg" width="30" height="18" border="0"></div></td>
</tr>
</table>
<table width="800" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td width="33%" height="45"><form name="frm"
method="post"
action="tva.php">
<input type="text"
name="ht" />
<button class="textes" onclick="frm.tva.value=(Number(frm.ht.value)*0.196);">Calcul TVA</button>
<input type="text"
name="tva" />
<input type="submit" value="envoyer">
</form>
</td>
<td width="33%"><div align="center">
</div></td>
<td width="33%"> </td>
</tr>
</table>
<table width="800" >
<tr>
<td bgcolor="#BDDFE1" class="menugauche">Ports</td>
</tr>
<tr>
<td><form name="caddie" class="textes">
<span class="menugauche">1/ Offert à partir de 100€</span> et jusqu'à 30Kg.
<input type="checkbox" name="achat1" value="0" OnClick="calculette()">
<br>
<span class="menugauche">2/</span> A partir de 30 Kg : Tarification selon le transporteur.
<input type="checkbox" name="achat2" value="0" OnClick="calculette()">
<br>
<span class="menugauche">3/</span> 6€ jusqu'à 100€.
<input type="checkbox" name="achat3" value="0" OnClick="calculette()">
<br>
<input type="text" name="Total" size="8" readonly>
</form></td>
</tr>
</table>
<table width="800" >
<tr>
<td bgcolor="#BDDFE1" class="menugauche">Validation</td>
</tr>
<tr>
<td><form action="/panier1.php" method="post" target="popup" class="menugauche" onsubmit="javascript:window.open('','popup','width=650,height=450,top='+((screen.height-450)/2)+',left='+((screen.width-650)/2)+',scrollbars=1,location= 1,status=1,resizable=1');">
<div align="right"><span class="menugauche">Valider ma commande</span>
<input name="Submit" type="submit" class="textes" value="Valider">
</form></td>
</tr>
</table>
</div>
[/cmd]
partie 2:
[cmd]
<div align="center">
<table width="800" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td width="800"><form name="client" method="post" action="/envoi_client.php3">
<table width="100%" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td bgcolor="#BDDFE1" class="menuhaut"><div align="left">DEJA CLIENT? </div></td>
</tr>
</table>
<table width="100%" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td width="50%" class="menugauche"><div align="right">Votre N° de reference client </div></td>
<td class="textes"><input name="champ1" type="text" size="50">
</td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">Nom Société</div></td>
<td class="textes"><input name="champ2" type="text" size="50"></td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">Nom Client</div></td>
<td class="textes"><input name="champ3" type="text" size="50"></td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">Prénom Client </div></td>
<td class="textes"><input name="champ4" type="text" size="50"></td>
</tr>
<tr>
<td><div align="center">
<SCRIPT LANGUAGE="JavaScript">
if(window.print)
{
document.write('<A HREF="window.print()">Imprimer</A>');
}
</SCRIPT>
</div></td>
<td class="textes"><input type="submit" name="Submit" value="Envoyer">
<a href="../cgv.php" target="_blank" class="textes">J'accepte les Conditions Générales de Ventes</a></td>
</tr>
</table>
</form></td>
</tr>
</table>
</div>
<div align="center">
<table width="800" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td><form name="nonclient" method="post" action="/envoi_nonclient.php3">
<table width="100%" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td width="20%" height="17" bgcolor="#BDDFE1" class="menuhaut"><div align="left">
<p>NOUVEAU CLIENT?</p>
</div></td>
<td width="80%" bgcolor="#BDDFE1" class="textes"><div align="right">Vous recevrez votre N° d'identification : Référence Client : avec votre première commande</div></td>
</tr>
</table>
<div align="center">
<table width="100%" bordercolor="#FFFFFF" bgcolor="#FFFFFF" >
<tr>
<td width="50%" class="menugauche"><div align="right">Votre nom </div></td>
<td class="textes"><input name="champ1" type="text" size="50">
</td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">Votre prenom </div></td>
<td class="textes"><input name="champ2" type="text" size="50"></td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">si compte professionnel </div></td>
<td class="textes"> </td>
</tr>
<tr>
<td width="50%" class="menugauche"><div align="right">Nom société </div></td>
<td class="textes"><input name="champ3" type="text" size="50"></td>
</tr>
<tr>
<td class="menugauche"><div align="right"></div></td>
<td class="textes"> </td>
</tr>
<tr>
<td class="menugauche"><div align="right">Adresse</div></td>
<td class="textes"><textarea name="champ4" cols="45" rows="6">Ville:
Rue:
sup:
Code Postal:
Pays: FRANCE</textarea></td>
</tr>
<tr>
<td class="menugauche"><div align="right">Email</div></td>
<td class="textes"><input name="champ5" type="text" size="50"></td>
</tr>
<tr>
<td class="menugauche"><div align="right">Téléphone</div></td>
<td class="textes"><input name="champ6" type="text" size="50"></td>
</tr>
<tr>
<td class="menugauche"><div align="right">Fax</div></td>
<td class="textes"><input name="champ7" type="text" size="50"></td>
</tr>
<tr>
<td><div align="center">
<SCRIPT LANGUAGE="JavaScript">
if(window.print)
{
document.write('<A HREF="window.print()">Imprimer</A>');
}
</SCRIPT>
</div></td>
<td class="textes"><input type="submit" name="Submit" value="Envoyer">
<a href="../cgv.php" target="_blank">J'accepte les Conditions Générales de Ventes</a></td>
</tr>
</table>
</div>
</form></td>
</tr>
</table>
<table width="800" bordercolor="#FFFFFF" bgcolor="#FFFFFF">
<tr>
<td><form action="/logout.php" method="post">
<div align="right"><span class="menugauche">Annuler ma commande</span>
<input type="submit" name="Submit" value="Annuler">
</div>
</form></td>
</tr>
</table>
</div>
[/cmd]
1000 MERCIS D'AVANCE POUR VOS REPONSES