Created
June 7, 2020 13:47
-
-
Save davidchc/5c50be56fde19b7198ddd7f646a66a8e to your computer and use it in GitHub Desktop.
Exemplo para enviar os dados do carrinho por e-mail . Funções do carrinho e produto, e conexão está nesse repositório: https://github.com/davidchc/carrinho-de-compra-procedural
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
//Inicia Session | |
session_start(); | |
//Chama a funcões dos produtos | |
require_once "functions/product.php"; | |
//chama as funções do carrinhos | |
require_once "functions/cart.php"; | |
//Chama a conexão | |
$pdoConnection = require_once "connection.php"; | |
/* | |
Captura so dados do formulário | |
*/ | |
//Argumentos para filtrar os dados do formulário | |
$args = [ | |
'nome' => FILTER_SANITIZE_STRING , | |
'email' => FILTER_VALIDATE_EMAIL, | |
'telefone' => FILTER_SANITIZE_STRING, | |
'endereco' -> FILTER_SANITIZE_STRING, | |
'rua' -> FILTER_SANITIZE_STRING, | |
'complemento' -> FILTER_DEFAULT, | |
'bairro' -> FILTER_SANITIZE_STRING, | |
'cidade' -> FILTER_SANITIZE_STRING, | |
'estado' -> FILTER_SANITIZE_STRING | |
]; | |
//passa os argumentos e recupera os posts do formulário | |
//os noms passados precisam ser os mesmos dos campos do formulário | |
$post = filter_input_array(INPUT_POST, $args); | |
/*RECUPERA OS DADOS DO CARRINHO*/ | |
$resultsCarts = getContentCart($pdoConnection); | |
$totalCarts = getTotalCart($pdoConnection); | |
//Monta a mensagem para enviar com dados do carrinho | |
$messages = ""; | |
$messages .= "<p>Nome: ".$post['nome']."</p>"; | |
$messages .= "<p>E-mail: ".$post['email']."</p>"; | |
$messages .= "<p>Felefone: ".$post['telefone']."</p>"; | |
$messages .= "<p>Endereco: ".$post['endereco']."</p>"; | |
$messages .= "<p>Rua: ".$post['rua']."</p>"; | |
$messages .= "<p>Complemento: ".$post['complemento']."</p>"; | |
$messages .= "<p>Cidade: ".$post['cidade']."</p>"; | |
$messages .= "<p>Estado: ".$post['estado']."</p>"; | |
//O valor total de pagamento | |
$messages .= "<h2>Dados de Pagamento</h2>"; | |
$messages .= "<p><b>Valor Total: R$".number_format($totalCarts, 2, ',', '.')."</b></p>"; | |
//Agora pega os dados do carrinho e monta a mensagem dos produtos | |
$messages .= "<h2>Dados de Carrinho</h2>"; | |
foreach($resultsCarts as $result) { | |
$messages .= "<ul>"; | |
$messages .= "<li>Produto: ".$result['name']."</li>"; | |
$messages .= "<li>Quantidade: ".$result['quantity']."</li>"; | |
$messages .= "<li>Preço: R$". number_format($result['price'], 2, ',', '.')."</li>"; | |
$messages .= "<li>SuvTotal: R$".number_format($result['subtotal'], 2, ',', '.')."</li>"; | |
$messages .= "</ul>"; | |
} | |
/***** | |
***Define os dados como serão enviados | |
***/ | |
//Variável responsavel para definir quem recebe | |
$destinatario = 'seu@email.com.br'; | |
//Variável responsavel pelo titulo da mensagem | |
$assunto = 'Dados do Formulários'; | |
//Importante que from e Rrturn-Path ter do seu dominio | |
$cabecalho = 'MIME-Version: 1.0' . "\r\n"; | |
$cabecalho .= 'Content-type: text/html; charset=utf-8' . "\r\n"; | |
$cabecalho .= 'From: '.$destinatario.' ' . "\r\n"; | |
$cabecalho .= 'Reply-To: '.$post['email'].' ' . "\r\n"; | |
$cabecalho .= 'Return-Path: '.$destinatario.' ' . "\r\n"; | |
//Função que faz o disparo do email | |
if( mail($destinatario, $assunto, $messages, $cabecalho) ) { | |
echo "Seu pedido foi enviado com sucesso"; | |
} else { | |
echo "Erro ao tentar enviar pedidos"; | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment