Ir para conteúdo
Fórum Script Brasil
  • 0

Carrinho de compras


heros

Pergunta

Alo galera sou novo no fórum, na verdade eu sou novo em tudo que diz respeito a programação venho vivendo dos tutoriais que acho em foruns como este com pessoas interessadas em ajudar os outros, e por isso des de já deicho meus parabéns e meu agradecimento.

Agora vamos deichar de converça fiada e vamos ao que intereça, eu baichei um tutorial de carrinho de compras, ele tá funcionando legal mais eu queria fazer uma modificação, eu queria que o produto tivesse 3 preços, um preço unitário, um preço de quantidade de 100 a 400 e um de 400 a 1000, acredito que de pra fazer isso colocando um if e else, só que não tenho ideia de onde colocar, e como colocar, por favor de uma força ai galera, eu tó precisando muito deste esquema, vou postar o codigo a baixo se alguém ajudar meu email é negociodevalor@hotmail.com:

index.php:

<?php
//MONTA O ARRAY DE PRODUTOS
$produto[1][CODIGO] = "00001";
$produto[1][ARTISTA] = "CPM22";
$produto[1][ALBUM] = "Chegou a Hora de Recomeçar";
$produto[1][preço] = "25,50";
$produto[1][IMAGEM] = "cpm22.jpg";

$produto[2][CODIGO] = "00002";
$produto[2][ARTISTA] = "Offspring";
$produto[2][ALBUM] = "Splinter";
$produto[2][preço] = "28,35";
$produto[2][IMAGEM] = "offspring.jpg";

$produto[3][CODIGO] = "00003";
$produto[3][ARTISTA] = "Detonautas";
$produto[3][ALBUM] = "Roque Marciano";
$produto[3][preço] = "27,00";
$produto[3][IMAGEM] = "detonautas.jpg";

$produto[4][CODIGO] = "00004";
$produto[4][ARTISTA] = "Good Charlotte";
$produto[4][ALBUM] = "The Young And The Hopeless";
$produto[4][preço] = "30,00";
$produto[4][IMAGEM] = "charlotte.jpg";


//TOTAL DE PRODUTOS POR LINHA
$total = 2;

?>

<html>
<head>
<title>96º artigo PHP</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style></head>

<body>
<table width="773" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="topo.gif" width="773" height="100"></td>
</tr>
<tr>
<td> <br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align='center'><font face='Arial' size='4'><b>Carrinho de compras utilizando arrays e session</b></font></td>
</tr>
</table>
<br>
<br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><font face='Arial' size='2'>Confira abaixo, os produtos disponíveis no site:</font> </td>
</tr>
</table>
<br>

<form action="carrinho.php" method="post" name="frmcarrinho">
<input type="hidden" name="opc_efetivar" value="1">
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<?php
//PEGA A CHAVE DO ARRAY
$chave = array_keys($produto);

//EXIBE OS PRODUTOS
for($i=0; $i<sizeof($chave); $i++) {
$indice = $chave[$i];
$codigo = $produto[$indice][CODIGO];
$artista = $produto[$indice][ARTISTA];
$album = $produto[$indice][ALBUM];
$preço = $produto[$indice][preço];
$imagem = $produto[$indice][IMAGEM];

//VERIFICA
if($total == $atual) {
echo "</tr><tr>";
$atual = 0;
} ?>

<td width="14%" height="100"><img src="<?php echo $imagem; ?>" width="80" height="80" border="1"></td>
<td width="36%">

<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><font face='Arial' size='2'><?php echo $artista; ?></font></td>
</tr>

<tr>
<td><font face='Arial' size='2'><?php echo $album; ?></font></td>
</tr>

<tr>
<td><font face='Arial' size='2'>R$ <?php echo $preço; ?></font></td>
</tr>

<tr>
<td>
<input type="hidden" name="txtprod[<?php echo $indice;?>][CODIGO]" value="<?php echo $codigo; ?>">
<input type="hidden" name="txtprod[<?php echo $indice;?>][ARTISTA]" value="<?php echo $artista; ?>">
<input type="hidden" name="txtprod[<?php echo $indice;?>][ALBUM]" value="<?php echo $album; ?>">
<input type="hidden" name="txtprod[<?php echo $indice;?>][preço]" value="<?php echo $preço; ?>">
<input type="text" name="txtprod[<?php echo $indice;?>][QTDE]" size="3" maxlength="3">
<input type="image" src="carrinho.gif" onClick="java script: document.forms[0].submit();"></td>
</tr>
</table></td>
<?php
//SOMA 1 A VARIÁVEL CONTROLADORA
$atual++;
}//FEHA FOR ?>
</tr>
</table>
</form></td>
</tr>
<tr>
<td><img src="rodape.gif" width="773" height="20"></td>
</tr>
</table>
</body>
</html>[/codebox]

carrinho.php:

[codebox]<?php

//INICIALIZA A SESSÃO
session_start();


//VERIFICA SE A OPÇÃO ATUALIZAR FOI SELECIONADA
if($_POST[opc_atualizar]) {

//RECEBE OS PRODUTOS CHECADOS PARA ATUALIZAÇÃO
$v_atualiza = $_POST[a_prod];

//PEGA A CHAVE DO ARRAY
$chave = array_keys($v_atualiza);

//EXIBE
for($i=0; $i<sizeof($chave); $i++) {
//PEGA O INDICE DO PRODUTO
$indice = $chave[$i];

//ALTERA A QUANTIDADE DO PRODUTO SELECIONADO
$_SESSION[cesta][$indice][QTDE] = $v_atualiza[$indice][QTDE];
}//FECHA FOR
}//FECHA IF


//VERIFICA SE A OPÇÃO EXCLUIR FOI SELECIONADA
elseif($_POST[opc_excluir]) {

//RECEBE OS PRODUTOS CHECADOS PARA EXCLUSÃO
$excluir = $_POST[check];

//EXIBE
for($i=0; $i<sizeof($excluir); $i++) {
//PEGA O INDICE DO PRODUTO
$indice = $excluir[$i];
//DESTRÓI A VARIÁVEL ESPECIFICADA
unset($_SESSION[cesta][$indice]);
}//FECHA FOR
}//FECHA IF



//RECEBE O PEDIDO DO USUÁRIO
elseif($_POST[opc_efetivar]) {
//RECEBE AS VARIÁVEIS
$v_prod = $_POST[txtprod];

//PEGA A CHAVE DO ARRAY
$chave = array_keys($v_prod);

//EXIBE
for($i=0; $i<sizeof($chave); $i++) {
$indice = $chave[$i];

//VERIFICA
if(!empty($v_prod[$indice][QTDE]) ) {

//GRAVA NO ARRAY CESTA
$cesta[$indice][ARTISTA] = $v_prod[$indice][ARTISTA];
$cesta[$indice][ALBUM] = $v_prod[$indice][ALBUM];
$cesta[$indice][preço] = $v_prod[$indice][preço];
$cesta[$indice][QTDE] = $v_prod[$indice][QTDE];
}//FECHA IF
}//FECHA FOR

//GRAVA NA SESSÃO
$_SESSION[cesta] = $cesta;
}//FECHA ELSE
?>

<html>
<head>
<title>95º artigo PHP</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
.style2 {
color: #000000;
font-weight: bold;
}
.style5 {color: #FFFFFF; font-weight: bold; }
-->
</style>

&lt;script language="JavaScript">
<!--
function enviar(opcao) {
//OPÇÃO EXCLUIR SELECIONADA
if(opcao == 'E') {
document.forms[0].opc_excluir.value = 1;
document.forms[0].submit();
}//FECHA IF

//OPÇÃO ATUALIZAR SELECIONADA
if(opcao == 'A') {
document.forms[0].opc_atualizar.value = 1;
document.forms[0].submit();
}//FECHA IF

//OPÇÃO FINALIZAR SELECIONADA
if(opcao == 'F') {
document.forms[0].opc_finalizar.value = 1;
document.forms[0].action = "finalizar.php";
document.forms[0].submit();
}//FECHA IF

}//FECHA FUNCTION
//-->
</script>

</head>

<body>
<table width="773" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="topo.gif" width="773" height="100"></td>
</tr>
<tr>
<td><br>
<br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align='center'><font face='Arial' size='4'><b>Carrinho de compras utilizando arrays e session</b></font></td>
</tr>
</table>
<br>
<br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><font size="2" face="Arial">Carrinho de Compras: </font></td>
</tr>
</table>

<?php
//EXIBE O CARRINHO SE TIVER PRODUTOS
if(count($_SESSION[cesta]) > 0) { ?>

<form name="frmCarrinho" method="post">
<input type="hidden" name="opc_excluir">
<input type="hidden" name="opc_atualizar">
<input type="hidden" name="opc_finalizar">
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr bgcolor="#CCCCCC">
<td width="4%"> </td>
<td width="8%"><span class="style2">Qtde</span></td>
<td width="51%"><span class="style2">Produto</span></td>
<td width="19%"><span class="style2">Valor</span></td>
<td width="18%"><span class="style2">Subtotal</span></td>
</tr>
<?php
//PEGA A CHAVE
$chave_cesta = @array_keys($_SESSION[cesta]);

//EXIBE OS PRODUTOS DA CESTA
for($i=0; $i<sizeof($chave_cesta); $i++) {
$indice = $chave_cesta[$i];

//SUBTOTAIS DE CADA PRODUTO
$subtotal = $_SESSION[cesta][$indice][QTDE] * ereg_replace(",",".",$_SESSION[cesta][$indice][preço]);

//TOTAL GERAL
$total += $subtotal;
?>
<tr>
<td height="25"><input name="check[]" type="checkbox" value="<?php echo $indice; ?>"></td>
<td height="25"><font face='Arial' size='2'>
<input type="text" name="a_prod[<?php echo $indice; ?>][QTDE]" value="<?php echo $_SESSION[cesta][$indice][QTDE]; ?>" size="3"></font></td>
<td height="25"><font face='Arial' size='2'><?php echo $_SESSION[cesta][$indice][ARTISTA]; ?> - <?php echo $_SESSION[cesta][$indice][ALBUM]; ?></font></td>
<td height="25"><font face='Arial' size='2'>R$ <?php echo $_SESSION[cesta][$indice][preço]; ?></font></td>
<td width="18%" height="25"><font face='Arial' size='2'> R$ <?php echo number_format($subtotal,2,',','.'); ?></font></td>
</tr>
<?php
}//FECHA FOR ?>
<tr>
<td height="25" colspan="3">
<input type="image" name="btnExcluir" src="excluir.gif" onClick="enviar('E');">  
<input type="image" name="btnAtualiza" src="atualizar.gif" onClick="enviar('A');"></td>
<td height="25" bgcolor="#FF0000"><span class="style5">  Total à pagar: </span></td>
<td height="25" bgcolor="#FFF0F0" class="style2">   R$ <b><?php echo number_format($total,2,',','.'); ?></b></td>
</tr>
<tr>
<td height="25" colspan="3"> </td>
<td height="40" colspan="2"><div align="center">
<input type="image" name="btnFinaliza" src="finaliza.gif" onClick="enviar('F');"></div></td>
</tr>
</table>
</form>
<?php
}//FECHA IF(count)
else { ?><br><br><br>
<table width="90%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align='center'><font face='Arial' size='2' color="#006666"><b>Desculpe, mas no momento você não possui nenhumm produto.</b></td>
</tr>
</table><br><br>
<?php
}//FECHA ELSE (count)?>
<table width="70%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align='center'><font face='Arial' size='2'><a href="index.php"><< Voltar </a></font></td>
</tr>
</table>
<br>
</td>
</tr>
<tr>
<td><img src="rodape.gif" width="773" height="20"></td>
</tr>
</table>
</body>
</html>

finalizar.php:

<?php

//INICIALIZA A SESSÃO
session_start();

//VERIFICA SE FOI ESCOLHIDA A OPÇÃO PARA FECHA O PEDIDO
if($_POST[opc_enviar]) {

//RECEBE OS DADOS DO FORMULÁRIO
$v_nome = $_POST[txtNome];
$v_end = $_POST[txtEndereco];
$v_email = $_POST[txtEmail];
$v_produtos = $_POST[v_produtos];
$v_total = number_format($_POST[v_total],2,',','.');

//EMAIL DO ADMINISTRADOR QUE VAI RECEBER O PEDIDO
$email_dest = "administrador@teste.com.br";

//PREPARA O PEDIDO
$mens = "---------------------------------------------------------------------\n";
$mens .= " iMasters- B2C \n";
$mens .= " Pedido de Compras \n";
$mens .= "---------------------------------------------------------------------\n\n";
$mens .= "Qtde Descrição Valor Unit. \n";
$mens .= "---------------------------------------------------------------------";
$mens .= "\n".$v_produtos." \n";
$mens .= "Total a pagar: R$".$v_total." \n\n";
$mens .= "DADOS PARA ENTREGA: \n";
$mens .= "Nome: ".$v_nome." \n";
$mens .= "Endereço: ".$v_end." \n";
$mens .= "Email: ".$v_email." \n\n";
$mens .= "Obrigado!! \n";
$mens .= "iMasters - B2C ";


//DISPARA O EMAIL
$envia = mail($email_dest, "Pedido iMasters B2C", $mens,"From:".$v_email."\r\nBcc:".$v_email);

//VERIFICA SE O EMAIL FOI ENVIADO COM SUCESSO
if($envia) {
//ELIMINA TODAS AS VARIÁVEIS DA SESSÃO
$_SESSION = array();

//DESTRÓI A SESSÃO PARA GARANTIR
@session_destroy(); ?>

&lt;script language="JavaScript">
<!--
alert("PARABÉNS!!\n\nO seu pedido foi enviado com sucesso.");
window.location.href = "index.php";
//-->
</script>
<?php
}//FECHA IF(envia)
else {?>
&lt;script language="JavaScript">
<!--
alert("ERRO!!\n\nAconteceu algum problema.\n\nPor favor, tente novamente...");
window.location.href = "index.php";
//-->
</script>
<?php
}//FECHA ELSE (envia)
}//FECHA IF
?>

<html>
<head>
<title>96º artigo PHP</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
.style2 {
color: #000000;
font-weight: bold;
}
.style5 {
color: #FFFFFF;
font-weight: bold;
}
-->
</style>

&lt;script language="JavaScript">
<!--
function finaliza() {
if(confirm('Deseja mesmo efetivar esse pedido ?'))
return true;
else return false;
}//FECHA FUNCTION
//-->
</script>

</head>

<body>
<table width="773" border="0" cellspacing="0" cellpadding="0">
<tr>
<td><img src="topo.gif" width="773" height="100"></td>
</tr>

<tr>
<td><br><br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td align='center'><font face='Arial' size='4'><b>Carrinho de compras utilizando arrays e session</b></font></td>
</tr>
</table>

<br><br>

<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td><font size="2" face="Arial">Fechamento do pedido de compras: </font></td>
</tr>
</table>

<br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr bgcolor="#0099CC">
<td width="10%"><span class="style2">Qtde</span></td>
<td width="53%"><span class="style2">Produto</span></td>
<td width="19%"><span class="style2">Valor</span></td>
<td width="18%"><span class="style2">Subtotal</span></td>
</tr>

<?php
//PEGA A CHAVE
$chave_cesta = array_keys($_SESSION[cesta]);

//EXIBE OS PRODUTOS DA CESTA
for($i=0; $i<sizeof($chave_cesta); $i++) {
$indice = $chave_cesta[$i];

//ATRIBUI CONTEUDO A VAR QUE VAI SER USADO NO EMAIL
$v_produtos .= $_SESSION[cesta][$indice][QTDE]." - ".$_SESSION[cesta][$indice][ARTISTA]."   ".$_SESSION[cesta][$indice][ALBUM]." - ".$_SESSION[cesta][$indice][preço]."\n";

//SUBTOTAIS DE CADA PRODUTO
$subtotal = $_SESSION[cesta][$indice][QTDE] * $_SESSION[cesta][$indice][preço];

//TOTAL GERAL
$total += $subtotal;
?>
<tr>
<td height="25"><font face='Arial' size='2'><?php echo $_SESSION[cesta][$indice][QTDE]; ?></font></td>
<td height="25"><font face='Arial' size='2'><?php echo $_SESSION[cesta][$indice][ARTISTA]; ?> - <?php echo $_SESSION[cesta][$indice][ALBUM]; ?></font></td>
<td height="25"><font face='Arial' size='2'>R$ <?php echo $_SESSION[cesta][$indice][preço]; ?></font></td>
<td width="18%" height="25"><font face='Arial' size='2'> R$ <?php echo number_format($subtotal,2,',','.'); ?></font></td>
</tr>
<?php
}//FECHA FOR ?>
<tr>
<td height="25" colspan="2">  </td>
<td height="25" bgcolor="#FF0000"><span class="style5">  Total à pagar: </span></td>
<td height="25" bgcolor="#FFF0F0" class="style2">   R$ <b><?php echo number_format($total,2,',','.'); ?></b></td>
</tr>
</table>

<form name="frmFinalizar" method="post" onSubmit="return finaliza();">
<input type="hidden" name="opc_enviar" value="1">
<input type="hidden" name="v_produtos" value="<?php echo $v_produtos; ?>">
<input type="hidden" name="v_total" value="<?php echo $total; ?>">
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td bgcolor="#FFCC99" class="style2"><div align="center">Dados Pessoais</div></td>
</tr>
</table>

<br>
<table width="95%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="11%" height="25"><font face="Arial" size="2">Nome:</font></td>
<td height="25" colspan="3"><font face="Arial" size="2">
<input name="txtNome" type="text" size="50" maxlength="50"></font></td>
</tr>

<tr>
<td height="25"><font face="Arial" size="2">Endereço:</font></td>
<td width="45%" height="25"><font face="Arial" size="2">
<input name="txtEndereco" type="text" size="40" maxlength="80"></font></td>
<td width="8%" height="25"><font face="Arial" size="2">Email:</font></td>
<td width="36%" height="25"><input name="txtEmail" type="text" size="40" maxlength="45"></td>
</tr>

<tr valign="bottom">
<td height="50" colspan="4"><div align="center">
<input name="btnEnviar" type="submit" value="Confirmar o pedido de compras >>"></div></td>
</tr>
</table>
</form>

<table width="70%" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="47%" align='center'><font face='Arial' size='2'><a href="index.php"><< Página inicial </a></font></td>
<td width="53%" align='center'><font face='Arial' size='2'><a href="carrinho.php"><< Carrinho de compras</a></font> </td>
</tr>
</table><br></td>
</tr>

<tr>
<td><img src="rodape.gif" width="773" height="20"></td>
</tr>
</table>
</body>
</html>[/codebox]

Editado por quintelab
Removido Caixa Alta do Título
Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Olha, eu também to fazendo uma site com carrinho, e também to vivendo de tutoriais, olha esse aqui http://scriptbrasil.com.br/forum/index.php?showtopic=96267, baixa os arquivos dele ai voçê altera om o layout do site e coisa e tal (tem que entender de HTML também), você vai precisa fazer o download do XAMPP (Apache, mysql, php e phpmyadmin), onde voçê vai criar o banco de dados e coisa e tal, caso voçê opte por essa opção posso ir te dando umas dicas pra voçê agilizar. até

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...