par
bibo341 » 11 avr. 2008, 13:32
Salut à tous,
J'ai une liste de produits avec checkbox pour selectionner se que l'on veut.
Dans un tableau
j'ai en mémoire les produits choisit auparavent.
J'aimerai visionner ma liste de produits et faire en sorte que les produits contenu dans le tableau Session soit coché.
Voici le code qui affiche la liste de produit:
Code : Tout sélectionner
while($data = mysql_fetch_assoc($request))
{
if ($data['final_price_promo'] == '') {
$final_price = $data['final_price'];
} else {
$final_price = $data['final_price_promo'];
}
echo '<tr>
<td class="directbuy" width="90" align="center"><input type="checkbox" name="select[]" value="p' . $data['products_id'] . 'c' . $data['couleur'] . 't' . $data['taille'] . '-' . $data['products_name'] . '-' . $data['taille'] . '-' . $data['couleur'] . '-' . $final_price . '"' . $check . ' /></td>
<td class="directbuy_ref" width="50">' . $data['products_ref'] . '</td>
<td class="directbuy_nom" width="260">' . $data['products_name'] . '</td>
<td class="directbuy" width="130" align="center">' . $data['couleur'] . '</td>
<td class="directbuy" width="90" align="center">' .$data['taille'] . '</td>
<td class="directbuy_check" width="100" align="center"><input class="quantite" type="text" name="p' . $data['products_id'] . 'c' . $data['couleur'] . 't' . $data['taille'] . '" ' . $quantite . ' /></td>
</tr>';
}
Le tableau Session est formé de la sorte dans la page qui récapitule la commande que l'on veut passer
Code : Tout sélectionner
foreach ( $_POST["select"] AS $value ){
$data = explode("-", $value);
if ((!empty($_POST[$data[0]])) && ($_POST[$data[0]] != 0)) {
$prix= $data[4] * $_POST[$data[0]];
$prix_total += $prix;
$prix_unitaire= sprintf("%01.2f", $data[4]);
echo '<tr>
<td class="main">
<table border="0" cellpadding="0" cellspacing="0">
<tr><td class="main" height="10" width="100%"></td></tr>
<tr><td class="main_bold" width="720">' . tep_draw_separator('pixel_trans.gif', '10', '1') . '- ' . $data[1] . '<input type="hidden" name="select[]" value="'. $data[1] . '-' . $_POST[$data[0]] . '-' . $data[3] . '-' . $data[2] . '-' . $prix_unitaire . '-' . $prix . '-' . $prix_total . '" /></td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Quantité : ' . $_POST[$data[0]] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Couleur : ' . $data[3] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Taille : ' . $data[2] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Prix unitaire : ' . $prix_unitaire . ' Euros</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Sous-total : ' . $prix . ' Euros</td></tr>
</table>
</td>
</tr>';
//mise en memoire session
$_SESSION['panier'][] = array('nom'=>$data[1],
'couleur'=>$data[3],
'taille'=>$data[2],
'quantite'=>$_POST[$data[0]]);
}
}
Normalement j'ai ma condition qui va permettre de coché ou non les produits concerné mais je n'arrive pas à afficher.
J'ai déjç la boucle qui parcoure le tableau de la requète pour faire la liste, si je fais une boucle pour parcourir le tableau Session, je vais ma liste en double, je ne sais pas comment faire.
Salut à tous,
J'ai une liste de produits avec checkbox pour selectionner se que l'on veut.
Dans un tableau
[code]$_SESSION['panier'][/code]
j'ai en mémoire les produits choisit auparavent.
J'aimerai visionner ma liste de produits et faire en sorte que les produits contenu dans le tableau Session soit coché.
Voici le code qui affiche la liste de produit:
[code]
while($data = mysql_fetch_assoc($request))
{
if ($data['final_price_promo'] == '') {
$final_price = $data['final_price'];
} else {
$final_price = $data['final_price_promo'];
}
echo '<tr>
<td class="directbuy" width="90" align="center"><input type="checkbox" name="select[]" value="p' . $data['products_id'] . 'c' . $data['couleur'] . 't' . $data['taille'] . '-' . $data['products_name'] . '-' . $data['taille'] . '-' . $data['couleur'] . '-' . $final_price . '"' . $check . ' /></td>
<td class="directbuy_ref" width="50">' . $data['products_ref'] . '</td>
<td class="directbuy_nom" width="260">' . $data['products_name'] . '</td>
<td class="directbuy" width="130" align="center">' . $data['couleur'] . '</td>
<td class="directbuy" width="90" align="center">' .$data['taille'] . '</td>
<td class="directbuy_check" width="100" align="center"><input class="quantite" type="text" name="p' . $data['products_id'] . 'c' . $data['couleur'] . 't' . $data['taille'] . '" ' . $quantite . ' /></td>
</tr>';
}
[/code]
Le tableau Session est formé de la sorte dans la page qui récapitule la commande que l'on veut passer
[code]
foreach ( $_POST["select"] AS $value ){
$data = explode("-", $value);
if ((!empty($_POST[$data[0]])) && ($_POST[$data[0]] != 0)) {
$prix= $data[4] * $_POST[$data[0]];
$prix_total += $prix;
$prix_unitaire= sprintf("%01.2f", $data[4]);
echo '<tr>
<td class="main">
<table border="0" cellpadding="0" cellspacing="0">
<tr><td class="main" height="10" width="100%"></td></tr>
<tr><td class="main_bold" width="720">' . tep_draw_separator('pixel_trans.gif', '10', '1') . '- ' . $data[1] . '<input type="hidden" name="select[]" value="'. $data[1] . '-' . $_POST[$data[0]] . '-' . $data[3] . '-' . $data[2] . '-' . $prix_unitaire . '-' . $prix . '-' . $prix_total . '" /></td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Quantité : ' . $_POST[$data[0]] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Couleur : ' . $data[3] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Taille : ' . $data[2] . '</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Prix unitaire : ' . $prix_unitaire . ' Euros</td></tr>
<tr><td class="main" width="720">' . tep_draw_separator('pixel_trans.gif', '30', '1') . 'Sous-total : ' . $prix . ' Euros</td></tr>
</table>
</td>
</tr>';
//mise en memoire session
$_SESSION['panier'][] = array('nom'=>$data[1],
'couleur'=>$data[3],
'taille'=>$data[2],
'quantite'=>$_POST[$data[0]]);
}
}
[/code]
Normalement j'ai ma condition qui va permettre de coché ou non les produits concerné mais je n'arrive pas à afficher.
J'ai déjç la boucle qui parcoure le tableau de la requète pour faire la liste, si je fais une boucle pour parcourir le tableau Session, je vais ma liste en double, je ne sais pas comment faire.