seguinte, estou fazendo um carrinho de compras em php com session. preciso que quando a pessoa for comprar uma roupa por exemplo, que o tamanho que ela escolheu (P,M,G,GG) fosse adicionado na descrição do produto, consigo recuperar o tamanho via get mas não to conseguindo colocar ele na descrição de maneira nenhuma, segue o codigo:
<?php
session_start();
if(!isset($_SESSION['carrinho'])){
$_SESSION['carrinho'] = array();
}
//adiciona produto
//ADICIONAR CARRINHO
if($_GET['acao'] == 'add'){
$id = intval($_GET['Buy']);
if(!isset($_SESSION['carrinho'])){
$_SESSION['carrinho'][$id] = 1;
if(isset($_GET['T'])){
$_SESSION['tamanho'] = $_GET['T'];
}
else{
$_SESSION['tamanho'] = "";
}
}else{
$_SESSION['carrinho'][$id] += 1;
if(isset($_GET['T'])){
$_SESSION['tamanho'] = $_GET['T'];
$i++;
}
else{
$_SESSION['tamanho'] = "";
}
}
}
//REMOVER CARRINHO
if($_GET['acao'] == 'del'){
$id = intval($_GET['Buy']);
if(isset($_SESSION['carrinho'][$id])){
unset($_SESSION['carrinho'][$id]);
}
}
//ALTERAR QUANTIDADE
if($_GET['acao'] == 'up'){
if(is_array($_POST['prod'])){
foreach($_POST['prod'] as $id => $qtd){
$id = intval($id);
$qtd = intval($qtd);
if(!empty($qtd) || $qtd <> 0){
$_SESSION['carrinho'][$id] = $qtd;
}else{
unset($_SESSION['carrinho'][$id]);
}
}
}
}
?>
e p exibir estou fazendo assim:
<?php
if(count($_SESSION['carrinho']) == 0){
echo '<tr><td colspan="5">Não há produto no carrinho</td></tr>';
}else{
include 'admin/classe/Conexao.php';
$con = new Conexao();
$con->Conecta();
$total = 0;
foreach($_SESSION['carrinho'] as $id => $qtd){
$sql = "SELECT * FROM produto WHERE id= '$id'";
$qr = mysql_query($sql) or die(mysql_error());
$ln = mysql_fetch_assoc($qr);
$descricao = $ln['descricao'];
$preco = number_format($ln['preco'], 2, ',', '.');
$sub = number_format($ln['preco'] * $qtd, 2, ',', '.');
$total += $ln['preco'] * $qtd;
echo '<tr>
<td id="'.$id.'" name="descricao[]">'.$descricao." ".$_SESSION['tamanho'].'</td>
<td><input type="text" size="3" name="prod['.$id.']" value="'.$qtd.'" id="prod['.$id.']" /></td>
<input type="hidden" name="qtd[]" value="'.$qtd.'"/>
<input type="hidden" name="prodID[]" value="'.$id.'"/>
<input type="hidden" name="tam[]" value="'.$dt.'"/>
<td>R$ '.$preco.'</td>
<td>R$ '.$sub.'</td>
<td><a onclick="func(\'?acao=del&Buy='.$id.'\')">Remover</a></td>
</tr>';
}
$total = number_format($total, 2, ',', '.');
echo '<tr>
<td colspan="4">Total</td>
<td>R$ '.$total.'</td>
</tr>';
}
?>
so que o problema e que nao estou conseguindo incrementar a session para que exiba corretamente o tamanho
alguem pode me dar uma ajuda?
po ate consegui armazenar na sessao o tamanho das peças, agora preciso saber como posso percorrer essas duas sessions no mesmo foreach
Edição feita por: danielswater, 04/09/2012, 19:00.










