<!doctype HTML>

<html lang="pt-BR">
	<head>
		<meta charset="utf-8"/>
		<meta name="viewport" content="width=device-width, user-scalable=no"/>
		<link rel="stylesheet" href="../../../style/style.css" media='all'>
		<link rel="stylesheet" href="../../../style/texto.css" media='all'>
		<title>PHP - automatização de emails 🐘</title>
		<link rel="shortcut icon" href="../../../img/icn.png" type="image/x-png"/>
		<script async src="../../../js/principal.js"></script>
			<meta property="description" content="O envio de email era uma prática muito comum, “no tempo que alguém usava”,
            mas atualmente o envio de email é algo ainda muito comum e popular, e sim. Usada!" />
      	<meta property="og:title" content="PHP automatize absolutamente qualquer coisa  🐘" />
        <meta property="og:site_name" content="RootThings.org" />
        <meta property="og:url" content="https://rootthings.org/artigos/PHP/PHP Automatização" />
        <meta property="og:image" content="elephant-2870777.jpg" />
      	 <meta property="og:description" 
  			content="O envio de email era uma prática muito comum, “no tempo que alguém usava”,
            mas atualmente o envio de email é algo ainda muito comum e popular, e sim. Usada!" />
	</head>
	<body>
		{{cabecalho}}
		<section class="corpo">
			
			<div id="links"><br/>
				<a href="../../../">Home</a><br/>
				<a href="../../">Artigos</a><br/>
				<span>Introdução</span><br/>
				<a href="../PHP funcional - Map, Filter e Reduce | conheça/">PHP funcional - Map, Filter e Reduce | conheça</a><br/>
				<!--a href="../Multithreads com php no linux">Multithreads com php no Linux</a><br/-->

			</div>
			<nav id="linksbg">
			</nav>
			<div id="conteudo">
				<h1>PHP — Automatização, emails em serie.</h1>
			
				<p>
					O envio de email era uma prática muito comum, “no tempo que alguém usava”, mas atualmente o envio de email é algo ainda muito comum e popular, e sim. Usada!
				</p>
				<figure>	
					<img src="elephant-2870777.jpg"/>
					<figcaption>Determine a hora e o dia de enviar emails conforme queira!</figcaption>
				</figure>
				<p>
					Semana passada eu estava me perguntando como posso fazer envios de email que faça com que o usuário venha se sentir acompanhado pelo dono.
				</p>
				<p>
					E isso foi <strong>COMPLETAMENTE FRUSTRANTE</strong>, porque pesquisei <strong>BASTANTE</strong>, e não encontrei absolutamente <strong>NADA</strong> que pudesse me ajudar.
				</p>
			
				<hr/>
				<p>
					E aqui trouxe um artigo que solucionasse isso, vamos aos planos<span style="font-family:'Segoe UI Emoji'">✊</span>:
				</p>
				<p>
					Esse exemplo eu montarei em um ambiente GNU/Linux pois a maioria dos servidores rodam GNU/Linux, usarei um aplicativo nativo do sistema operacional que é o crontab que é basicamente um aplicativo responsável por definir uma hora para executar algo.
				</p>
				<blockquote>
					O crontab, é um programa do Unix que edita o arquivo onde são especificados os comandos a serem executados e a hora e dia de execução pelo cron, um serviço que executa comandos agendados nos sistemas operacionais do tipo Unix (como o GNU/Linux ou o MINIX, por exemplo). O cron se encarregará de verificar a hora e determinar se existe ou não algum programa a ser rodado. Caso exista ele o rodará na hora e data solicitada — Wikipedia.
				</blockquote>
				<p>
					Primeiramente vamos criar um banco de dados com os dados que queremos automatizar.
				</p>
				<figure>
					<img src="1*JkHyb_a2pzrUmnUqY53PxA.jpeg"/>
					<figcaption>Disponível em memegenerator.net</figcaption>
				</figure>
				<p>
					Para criar o banco dados, crie conforme sua preferencia, no meu caso usarei o mais comum, o MariaDB, que também não criarei aqui.deveria fazer:
				</p>
				<p>
					Precisará criar um campo para email, contador, titulos, mensagens, e data, sim data! faremos isso rápido, faça sua database e vamos logo ao formulário!
				</p>
				<figure>
					<script src="https://gist.github.com/Jul10l1r4/7b26e59d6ad9d8240234fe865bdc2408.js"></script>
					<figcaption>No caso precisarás apenas da tag form.</figcaption>
				</figure>
				<hr>
				<p>
					Veja o que fizemos, criamos um formulário básico em html que apenas pegará e enviará os dados para um script php, fiz isso pra ficar um pouco mais organizado (Eu tentei!).
				</p>
				<p>
					E agora, passamos os dados.. apenas o email.
				</p>
				<figure>
					<img src="1*80PsAM6I6YIf-jgn6zNvtw.jpeg"/>
					<figcaption>Disponível em meme4fun.com
					</figcaption>
				</figure>
				<p>
					Para a nossa página chamada processo.php, vamos aos códigos:
				</p>
				<figure>
					<script src="https://gist.github.com/Jul10l1r4/ab7557f5ab1964ca50da3c3c6f3307f9.js"></script>
					<figcaption>Olhe alí… na linha 60, viu! então, essa e a próxima linha dão as coordenadas de execução.</figcaption>
				</figure>
				<p>O fopen() é uma função nativa do PHP desde a versão quatro, e ela é útil para abrir seus arquivos, observe o cuidado na questão de segurança e das permissões de arquivos. E o exec(), que é uma função <strong>SUPER ÚTIL</strong>, ela também foi implantada desde a versão quatro.is:
				</p>
			
				<p>
					E vejam que usei o pdo para a a minha criação, iria usar o Mongodb mas pela minha versão do PHP ser a 7.1 atualmente não existe um recursos suportáveis (mas existem outras formas de instalar), e como eu não queria entrar em detalhes sobre a instalação.
				</p>
				<p>
					Vamos ao exec.php:
				</p>
				<figure>
					<script src="https://gist.github.com/Jul10l1r4/03af723a10960e3386c5025a09d6fa15.js"></script>
					<figcaption>Pus uma saída de dados, mas pode ser qualquer outra coisa, essa saída é em forma de array. Esse print_r é para sair de forma em array, mas isso nem é necessario</figcaption>
				</figure>
				<p>
					Lembrando, o caminho você DEVE ordenar desde a pasta raiz, e também o endereço de onde fica seu PHP. Então acabou por aqui 😄.
				</p><hr/>
				<h2>NÃO!</h2>
					<hr/>
				<figure>
					<video width="99%" height="400px" controls>
						<source src="burrice.webm" type="video/webm"/>
					</video>
					<figcaption>PRECISAMOS DE SEGURANÇA!</figcaption>
				</figure>
				<p>Como você conseguiu ver esses códigos sem seus olhos caírem? Certamente você que é dev e leu já estava tendo um ataque olhando os meus códigos 😨.</p>
				<p>Vamos imediatamente fazer uns ajustes. Vamos começar do inicio 👶.</p>				
				<figure>
					<script src="https://gist.github.com/Jul10l1r4/dce9fed8660eb3ccfcf776c4c5dda6a8.js"></script>
					<figcaption>Agora, já conseguimos evitar algumas dores de cabeça.</figcaption>
				</figure>
				<p>
					Não queremos que o hackerboy consiga nenhum dos dados, usamos a função <a href="http://php.net/manual/pt_BR/function.unset.php" target="_blink">unset</a> ❤ que é desde o PHP 4 além dela usamos o <a href="http://php.net/manual/pt_BR/function.filter-var.php" targe="_blink">filter_var</a> que é nativa desde o PHP 5, agora e o injection? o hackerboy não vai conseguir fii, e nem os dados, poderíamos criptografar simples né! Mas a SSL da <a href="https://letsencrypt.org/" target="_blank">Let’s encrypt</a> serve pra isso, e depois disso nosso guri das hackolândia irá penar pra quebrar as nossas criptografias, e vai ver ele desista da área de segurança.
				</p>
						
					<figure>
					<img src="https://media.giphy.com/media/jZY8aojmSc7wA/giphy.gif" style="min-width:20%;max-width:100%;"/>
					<figcaption>Depois que o hackerboy ver que não consegue nada de seu site</figcaption>
				</figure>			
	
				<p>
					Era só isso, e sim, irei fazer um funcional e com mongo de envio de email, e fará ser beeeem mais rápido do que esse que dei 💪.
				</p>

					
			</section>
			<footer id="rodape"><!-- pronto -->
			{{rodape}}
			</footer>
	
	</body>
</html>
