{"id":3955,"date":"2019-08-03T21:24:16","date_gmt":"2019-08-03T21:24:16","guid":{"rendered":"https:\/\/www.homehost.com.br\/blog\/?p=3955"},"modified":"2024-01-26T09:04:20","modified_gmt":"2024-01-26T12:04:20","slug":"formulario-html","status":"publish","type":"post","link":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/","title":{"rendered":"Formul\u00e1rio HTML: criando forms HTML e enviando dados"},"content":{"rendered":"\n<p>O uso de formul\u00e1rio HTML (ou HTML form) \u00e9 muito frequente na web, \u00e9 um dos principais pontos de intera\u00e7\u00e3o entre usu\u00e1rios e uma aplica\u00e7\u00e3o web. Geralmente, eles funcionam enviando os dados para um servidor, por\u00e9m tamb\u00e9m podem ser utilizados para alguma fun\u00e7\u00e3o na pr\u00f3pria p\u00e1gina.<\/p>\n\n\n\n<p>Portanto, entender como utilizar um formul\u00e1rio HTML \u00e9 muito importante, al\u00e9m de lhe permitir criar diversas aplica\u00e7\u00f5es e funcionalidades diferentes.<\/p>\n\n\n\n<p>Caso prefira, voc\u00ea tamb\u00e9m pode <a href=\"https:\/\/www.homehost.com.br\/blog\/empreendedorismo\/google-forms-guia-facil-para-criar-formularios-incriveis\/\">criar um formul\u00e1rio no Google<\/a>, usando o Google Forms.<\/p>\n\n\n\n<p><div id=\"ez-toc-container\" class=\"ez-toc-v2_0_72 ez-toc-wrap-center counter-hierarchy ez-toc-counter ez-toc-custom ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Conte\u00fado<\/p>\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#O_que_e_um_formulario_HTML\" title=\"O que \u00e9 um formul\u00e1rio HTML?\">O que \u00e9 um formul\u00e1rio HTML?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Como_inserir_um_formulario_HTML\" title=\"Como inserir um formul\u00e1rio HTML\">Como inserir um formul\u00e1rio HTML<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Os_metodos_GET_e_POST\" title=\"Os m\u00e9todos GET e POST\">Os m\u00e9todos GET e POST<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#O_metodo_GET\" title=\"O m\u00e9todo GET\">O m\u00e9todo GET<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#O_metodo_POST\" title=\"O m\u00e9todo POST\">O m\u00e9todo POST<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Elementos_de_formulario_HTML\" title=\"Elementos de formul\u00e1rio HTML\">Elementos de formul\u00e1rio HTML<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#A_tag\" title=\"A tag &lt;input&gt;\">A tag &lt;input&gt;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Os_tipos_de_campos\" title=\"Os tipos de campos &lt;input&gt;\">Os tipos de campos &lt;input&gt;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#A_tag-2\" title=\"A tag &lt;textarea&gt;\">A tag &lt;textarea&gt;<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Criando_um_formulario_HTML\" title=\"Criando um formul\u00e1rio HTML\">Criando um formul\u00e1rio HTML<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Codigo_HTML_do_nosso_formulario\" title=\"C\u00f3digo HTML do nosso formul\u00e1rio\">C\u00f3digo HTML do nosso formul\u00e1rio<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Estilizando_nosso_formulario_HTML\" title=\"Estilizando nosso formul\u00e1rio HTML\">Estilizando nosso formul\u00e1rio HTML<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Recebendo_os_dados_do_formulario_com_PHP\" title=\"Recebendo os dados do formul\u00e1rio com PHP\">Recebendo os dados do formul\u00e1rio com PHP<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Apresentando_os_dados_do_formulario_na_tela_atraves_do_PHP\" title=\"Apresentando os dados do formul\u00e1rio na tela atrav\u00e9s do PHP\">Apresentando os dados do formul\u00e1rio na tela atrav\u00e9s do PHP<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Enviando_dados_do_formulario_por_e-mail_com_o_PHP_Mailer\" title=\"Enviando dados do formul\u00e1rio por e-mail com o PHP Mailer\">Enviando dados do formul\u00e1rio por e-mail com o PHP Mailer<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#O_que_e_o_PHPMailer\" title=\"O que \u00e9 o PHPMailer\">O que \u00e9 o PHPMailer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Fazendo_a_instalacao_do_PHPMailer\" title=\"Fazendo a instala\u00e7\u00e3o do PHPMailer\">Fazendo a instala\u00e7\u00e3o do PHPMailer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Criando_uma_classe_para_configurar_o_envio_de_e-mail_atraves_do_PHPMailer\" title=\"Criando uma classe para configurar o envio de e-mail atrav\u00e9s do PHPMailer\">Criando uma classe para configurar o envio de e-mail atrav\u00e9s do PHPMailer<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#Finalizando_nosso_formulario_HTML_com_envio_de_e-mail\" title=\"Finalizando nosso formul\u00e1rio HTML com envio de e-mail\">Finalizando nosso formul\u00e1rio HTML com envio de e-mail<\/a><\/li><\/ul><\/li><\/ul><\/nav><\/div>\n<a name=\"top1\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"O_que_e_um_formulario_HTML\"><\/span>O que \u00e9 um formul\u00e1rio HTML?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>O formul\u00e1rio HTML \u00e9 um formul\u00e1rio de preenchimento de dados ou que resulta em uma a\u00e7\u00e3o desejada utilizando a linguagem de marca\u00e7\u00e3o HTML. \u00c9 formado por um ou mais widgets. Esses widgets s\u00e3o campos de textos, caixas de sele\u00e7\u00e3o, bot\u00f5es, radio buttons e <a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/checkbox-html\/\" target=\"_blank\" rel=\"noreferrer noopener\">checkboxes<\/a> utilizando ferramentas do pr\u00f3prio HTML. Dessa forma, o usu\u00e1rio pode interagir com a p\u00e1gina ao executar a\u00e7\u00f5es atrav\u00e9s desses formul\u00e1rios.<\/p>\n\n\n\n<p>Esse recurso \u00e9 muito utilizado para a cria\u00e7\u00e3o de formul\u00e1rios de contato, formul\u00e1rios para captura de leads, e tamb\u00e9m para cria\u00e7\u00e3o de sistemas, como por exemplo a cria\u00e7\u00e3o de um modal de login.<\/p>\n\n\n\n<p>Portanto, vejamos abaixo alguns exemplos de formul\u00e1rios HTML que podemos encontrar na p\u00e1gina inicial da HomeHost:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01.jpg\" alt=\"Exemplo 01 de Formul\u00e1rio HTML\" class=\"wp-image-3959\" width=\"1547\" height=\"187\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01.jpg 1547w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01-300x36.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01-768x93.jpg 768w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01-1024x124.jpg 1024w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex01-1x1.jpg 1w\" sizes=\"(max-width: 1547px) 100vw, 1547px\" \/><\/figure>\n\n\n\n<p>A caixa de texto, assim como o bot\u00e3o de busca, e a caixa de sele\u00e7\u00e3o para escolher a extens\u00e3o de dom\u00ednio s\u00e3o <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/tags-html\/\" target=\"_blank\" rel=\"noopener\">elementos de um formul\u00e1rio HTML<\/a>. Por\u00e9m, al\u00e9m disso, percebe-se que h\u00e1 efeitos e estiliza\u00e7\u00e3o, elaborados atrav\u00e9s de outras ferramentas, como o CSS.<\/p>\n\n\n\n<p>Ainda na p\u00e1gina da HomeHost, na categoria&nbsp;<a href=\"https:\/\/www.homehost.com.br\/suporte\" target=\"_blank\" rel=\"noopener noreferrer\">Suporte<\/a>, podemos encontrar mais dois exemplos t\u00edpicos de formul\u00e1rios. O primeiro exemplo representa um formul\u00e1rio de contato, enquanto o segundo representa um formul\u00e1rio de busca. Vejamos abaixo esses exemplos:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex02.jpg\" alt=\"Formul\u00e1rio de Contato do HomeHost\" class=\"wp-image-3960\" width=\"504\" height=\"663\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex02.jpg 504w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex02-228x300.jpg 228w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex02-1x1.jpg 1w\" sizes=\"(max-width: 504px) 100vw, 504px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03.jpg\" alt=\"Exemplo de Formul\u00e1rio de Busca\" class=\"wp-image-3961\" width=\"1443\" height=\"349\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03.jpg 1443w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03-300x73.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03-768x186.jpg 768w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03-1024x248.jpg 1024w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex03-1x1.jpg 1w\" sizes=\"(max-width: 1443px) 100vw, 1443px\" \/><\/figure>\n\n\n\n<p><br><a name=\"top2\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Como_inserir_um_formulario_HTML\"><\/span>Como inserir um formul\u00e1rio HTML<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>O formul\u00e1rio HTML \u00e9 representado pela tag de abertura <strong>&lt;form&gt;<\/strong> e a de fechamento <strong>&lt;\/form&gt;<\/strong>. Dentro dessas tags, ser\u00e3o colocados todos os elementos que comp\u00f5em este formul\u00e1rio. Posteriormente, vamos explicar melhor como incluir esses elementos.<\/p>\n\n\n\n<p>Para a tag <strong>&lt;form&gt;<\/strong> podem ser atribu\u00eddos o atributo <strong>method<\/strong> e o atributo <strong>action.<\/strong><\/p>\n\n\n\n<p>O atributo&nbsp;<strong>action&nbsp;<\/strong>define o local (atrav\u00e9s de uma URL) ao qual ser\u00e3o enviados todos os dados recolhidos do formul\u00e1rio.<\/p>\n\n\n\n<p>O atributo <strong>method<\/strong> define o m\u00e9todo HTTP com que o formul\u00e1rio HTML ir\u00e1 lidar com os dados recebidos. S\u00e3o eles: o m\u00e9todo <strong>GET<\/strong> e o m\u00e9todo <strong>POST<\/strong>. Posteriormente vamos entender melhor como funcionam esses dois m\u00e9todos.<\/p>\n\n\n\n<p>Dessa forma, vejam exemplos abaixo do uso da tag <strong>&lt;form&gt;<\/strong> :<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!--Formul\u00e1rio HTML atrav\u00e9s do m\u00e9todo POST--&gt;\n&lt;form method=\"post\" action=\"\/receber_dados.php\"&gt;\n    ...\n&lt;\/form&gt;\n\n\n&lt;!--Formul\u00e1rio HTML atrav\u00e9s do m\u00e9todo GET --&gt;\n&lt;form method=\"get\" action=\"\/receber_dados.php\"&gt; \n    ... \n&lt;\/form&gt;\n<\/pre>\n\n\n\n<p><a name=\"top3\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Os_metodos_GET_e_POST\"><\/span>Os m\u00e9todos GET e POST<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Para entender a diferen\u00e7a entre esses dois m\u00e9todos, \u00e9 necess\u00e1rio compreender como funcionam as <a href=\"https:\/\/www.homehost.com.br\/blog\/internet\/o-que-e-http\/\" target=\"_blank\" rel=\"noopener noreferrer\">requisi\u00e7\u00f5es HTTP<\/a>. De uma forma resumida, sempre que voc\u00ea acessa um recurso atrav\u00e9s da web, o navegador envia uma requisi\u00e7\u00e3o atrav\u00e9s da URL. Portanto o HTTP \u00e9 uma requisi\u00e7\u00e3o que consiste em duas partes, o cabe\u00e7alho e o corpo. O cabe\u00e7alho cont\u00e9m um conjunto de metadados globais envolvendo os recursos do navegador. J\u00e1 o corpo pode conter informa\u00e7\u00f5es necess\u00e1rias para o servidor conseguir processar a solicita\u00e7\u00e3o anterior.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"O_metodo_GET\"><\/span>O m\u00e9todo GET<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>O m\u00e9todo GET \u00e9 usado pelo navegador para solicitar que o servidor envie de volta um determinado recurso. Portanto, \u00e9 como se fal\u00e1ssemos ao servidor &#8220;Servidor, eu quero obter este recurso.&#8221;.&nbsp; Nesse caso, o navegador envia um corpo vazio. Portanto, j\u00e1 que o corpo fica vazio, se um formul\u00e1rio for enviado atrav\u00e9s do m\u00e9todo GET, os dados ser\u00e3o reconhecidos pelo servidor atrav\u00e9s da URL.<\/p>\n\n\n\n<p>Dessa forma, podemos perceber que ao enviar um formul\u00e1rio com os campos Nome e Idade, a URL iria se parecer com algo como: url?nome=valor&amp;idade=value.<\/p>\n\n\n\n<p>Esse \u00e9 o m\u00e9todo padr\u00e3o do formul\u00e1rio HTML. Caso n\u00e3o seja declarado o atributo <strong>method,<\/strong> o formul\u00e1rio funcionar\u00e1 atrav\u00e9s do m\u00e9todo GET.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o, algumas observa\u00e7\u00f5es a respeito do m\u00e9todo GET:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>O tamanho de uma URL \u00e9 limitado a cerca de 3000 caracteres;<\/li>\n\n\n\n<li>Nunca use o GET para enviar dados confidenciais, pois esses dados ficar\u00e3o vis\u00edveis na URL;<\/li>\n\n\n\n<li>\u00c9 \u00fatil para envios de formul\u00e1rios em que um usu\u00e1rio deseja marcar o resultado;<\/li>\n\n\n\n<li>GET \u00e9 melhor para dados n\u00e3o seguros, como strings de consulta no Google.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"O_metodo_POST\"><\/span>O m\u00e9todo POST<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>O m\u00e9todo POST \u00e9 utilizado no navegador para conversar com o servidor. Os dados s\u00e3o enviados ao servidor atrav\u00e9s do corpo da solicita\u00e7\u00e3o HTTP. Tamb\u00e9m \u00e9 realizada uma solicita\u00e7\u00e3o de resposta. Portanto, \u00e9 como se fal\u00e1ssemos ao servidor &#8220;Servidor, verifique esses dados e me retorne um resultado adequado&#8221;. Dessa forma, ao enviar um formul\u00e1rio atrav\u00e9s do m\u00e9todo POST, os dados ser\u00e3o anexados ao corpo da solicita\u00e7\u00e3o HTTP.<\/p>\n\n\n\n<p>Diferentemente do m\u00e9todo GET, explicado anteriormente, o m\u00e9todo POST n\u00e3o inclui o corpo na URL. Portanto, os dados enviados n\u00e3o ficar\u00e3o vis\u00edveis na URL.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o, algumas observa\u00e7\u00f5es a respeito do m\u00e9todo POST:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Anexa dados de formul\u00e1rio dentro do corpo da solicita\u00e7\u00e3o de HTTP. Portanto, os dados n\u00e3o s\u00e3o mostrados na URL;<\/li>\n\n\n\n<li>N\u00e3o tem limita\u00e7\u00f5es de tamanho;<\/li>\n\n\n\n<li>Os envios de formul\u00e1rios com o POST n\u00e3o podem ser marcados.<\/li>\n<\/ul>\n\n\n\n<p><a name=\"top4\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Elementos_de_formulario_HTML\"><\/span>Elementos de formul\u00e1rio HTML<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Os formul\u00e1rios HTML s\u00e3o compostos por diversos elementos, que comp\u00f5em o formul\u00e1rio. Dessa forma, \u00e9 necess\u00e1rio entender como e quando utilizar cada um deles. Os elementos de formul\u00e1rios utilizados no HTML s\u00e3o:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/input-html\/\">input<\/a>&gt;&nbsp;<\/strong>&#8211; Define um campo de entrada de dados;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/textarea-html\/\">textarea<\/a>&gt;<\/strong> &#8211; Define uma \u00e1rea de texto, podendo conter diversas linhas de texto;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/html-buttton\/\">button<\/a>&gt;<\/strong> &#8211; Define um bot\u00e3o;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/select-html\/\">select<\/a>&gt;&nbsp;<\/strong>&#8211; Define uma lista selecion\u00e1vel, tamb\u00e9m conhecida como drop-down;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/select-html\/\">option<\/a>&gt; <\/strong>&#8211; Define uma lista de op\u00e7\u00f5es dentro de um drop-down select;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/select-html\/\">optgroup<\/a>&gt; <\/strong>&#8211; Define um grupo de op\u00e7\u00f5es;<\/li>\n\n\n\n<li><strong>&lt;fieldset&gt;&nbsp;<\/strong>&#8211; Define um grupo de campos;<\/li>\n\n\n\n<li><strong>&lt;<a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/labels-html\/\">label<\/a>&gt;&nbsp;<\/strong>&#8211; Define um r\u00f3tulo ou legenda para um campo ou controle do formul\u00e1rio;<\/li>\n\n\n\n<li><strong>&lt;output&gt; <\/strong>&#8211; Define elementos de sa\u00edda para o formul\u00e1rio;<\/li>\n\n\n\n<li><strong>&lt;legend&gt;&nbsp;<\/strong>&#8211; Define um t\u00edtulo para o conjunto de campos.<\/li>\n<\/ul>\n\n\n\n<p>Al\u00e9m dessas tags de elementos de formul\u00e1rio HTML, nada impede de utilizar outras tags dentro da tag<strong> &lt;form&gt;<\/strong>. Por exemplo: podemos utilizar dentro do <strong>&lt;form&gt;<\/strong> as tags <strong>&lt;div&gt;&lt;\/div&gt;<\/strong>, <strong>&lt;p&gt;&lt;\/p&gt;<\/strong>,&nbsp;entre outras.<\/p>\n\n\n\n<p>Neste artigo, vamos detalhar melhor apenas respeito das tags <strong>&lt;input&gt;<\/strong> e a tag <strong>&lt;textarea&gt;<\/strong>. Portanto, caso n\u00e3o conhe\u00e7a as demais tags, recomendamos a leitura do artigo <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/tags-html\/\" target=\"_blank\" rel=\"noopener noreferrer\">tags HTML<\/a>, sobre <a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/o-que-e-html\/\" target=\"_blank\" rel=\"noopener noreferrer\">o que \u00e9 HTML<\/a>&nbsp;e sobre o <a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/html5\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTML5<\/a>, dispon\u00edveis em <a href=\"https:\/\/www.homehost.com.br\/blog\/\" target=\"_blank\" rel=\"noopener noreferrer\">nosso blog<\/a>. Tamb\u00e9m recomendamos a leitura dos artigos referentes a este assunto na documenta\u00e7\u00e3o oficial da <a href=\"https:\/\/www.w3schools.com\/tags\/tag_form.asp\" target=\"_blank\" rel=\"noopener noreferrer\">W3C Schools<\/a>.<\/p>\n\n\n\n<p>Portanto, vejamos os seguintes sub-t\u00f3picos:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#top5\">A tag &lt;input&gt;<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#top6\">Os tipos de campos &lt;input&gt;<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#top7\">A tag &lt;textarea&gt;<\/a><\/li>\n<\/ul>\n\n\n\n<p><a name=\"top5\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"A_tag\"><\/span>A tag &lt;input&gt;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>A tag <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/input-html\/\">input em HTML<\/a>&nbsp;\u00e9 uma das mais utilizadas dentro de um formul\u00e1rio HTML e considerada a principal. Esta tag representa os campos de entrada de dados de um formul\u00e1rio. Existem diversos tipos, principalmente ap\u00f3s a atualiza\u00e7\u00e3o do HTML para a vers\u00e3o <a href=\"https:\/\/www.homehost.com.br\/blog\/uncategorized\/html5\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTML5<\/a>, que trouxe diversos tipos novos de <strong>&lt;input&gt;<\/strong>.<\/p>\n\n\n\n<p>O atributo mais importante da tag <strong>&lt;input&gt;<\/strong> \u00e9 o atributos <strong>type<\/strong>. Esse atributo representa o tipo de campo de entrada ao qual essa tag pertence e como ele se comporta. Portanto, declarar o atributo <strong>type<\/strong> \u00e9 um pr\u00e9-requisito para utilizar a tag <strong>&lt;input&gt;<\/strong>.<\/p>\n\n\n\n<p>Outro atributo importante para a tag <strong>&lt;input&gt;<\/strong> \u00e9 o atributo <strong>name<\/strong>, que define um nome para o campo de entrada. Este recurso \u00e9 muito \u00fatil para conseguir identificar os campos atrav\u00e9s dos m\u00e9todos GET e POST.<\/p>\n\n\n\n<p>H\u00e1 tamb\u00e9m outro atributo que \u00e9 muito utilizado, o atributo <strong>value<\/strong>. Esse atributo define um valor inicial para o campo de entrada.<\/p>\n\n\n\n<p>Outro atributo que tamb\u00e9m merece destaque \u00e9 o <strong>placeholder<\/strong>, pois esse atributo permite digitarmos uma &#8220;descri\u00e7\u00e3o&#8221; que ser\u00e1 visualizada enquanto o campo de entrada n\u00e3o possuir nenhum valor.<\/p>\n\n\n\n<p>H\u00e1 ainda um atributo bastante utilizado, que garante que aquele campo tenha seu preenchimento obrigat\u00f3rio para validar e permitir o envio do formul\u00e1rio: o atributo <strong>required<\/strong>. Portanto, sempre que precisar manter o preenchimento de um campo obrigat\u00f3rio, basta utilizar este atributo.<\/p>\n\n\n\n<p>Dessa forma, vejamos um exemplo de formul\u00e1rio abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form method=\"get\" action=\"envio_dados.php\"&gt;\n    &lt;input type=\"text\" name=\"nome\" placeholder=\"digite seu Nome aqui\"&gt;\n    &lt;input type=\"e-mail\" name=\"email\" placeholder=\"Digite seu e-mail\"&gt;\n    &lt;input type=\"submit\" name=\"enviar\" value=\"Enviar\"&gt;    \n&lt;\/form&gt;<\/pre>\n\n\n\n<p>No exemplo acima, o navegador renderizar\u00e1 o seguinte resultado:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04.jpg\" alt=\"Exemplo de formul\u00e1rio simples\" title=\"Exemplo de formul\u00e1rio simples\" class=\"wp-image-3964\" width=\"1297\" height=\"105\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04.jpg 1297w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04-300x24.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04-768x62.jpg 768w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04-1024x83.jpg 1024w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex04-1x1.jpg 1w\" sizes=\"(max-width: 1297px) 100vw, 1297px\" \/><\/figure>\n\n\n\n<p>Voc\u00ea pode ler mais sobre os atributos utilizados na tag <strong>&lt;input&gt;<\/strong> no <a href=\"https:\/\/www.w3schools.com\/html\/html_form_attributes.asp\" target=\"_blank\" rel=\"noopener noreferrer\">Artigo da W3C School: Input Attributes<\/a>.<br><a name=\"top6\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Os_tipos_de_campos\"><\/span>Os tipos de campos &lt;input&gt;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Conforme vimos anteriormente, o principal atributo da tag &lt;input&gt; \u00e9 o atributo <strong>type.<\/strong> Esse atributo \u00e9 capaz de definir o comportamento do campo de entrada. Ao todo, existem 22 valores para esse atributo, ou seja, 22 tipos de atributo <strong>type.<\/strong><\/p>\n\n\n\n<p>Tamb\u00e9m \u00e9 importante saber que boa parte desses tipos s\u00e3o recursos novos do <a href=\"https:\/\/www.homehost.com.br\/blog\/uncategorized\/html5\/\" target=\"_blank\" rel=\"noopener noreferrer\">HTML5<\/a>. Portanto, nem todos esses tipos s\u00e3o bem reconhecidos por todos navegadores, especialmente para dispositivos m\u00f3veis. S\u00e3o esses os novos tipos do HTML5: <strong>color<\/strong>, <strong>date<\/strong>, <strong>datetime<\/strong>&#8211;<strong>local<\/strong>, <strong>month<\/strong>, <strong>week<\/strong>, <strong>time<\/strong>, <strong>email<\/strong>, <strong>number<\/strong>, <strong>range<\/strong>, <strong>search<\/strong>, <strong>tel<\/strong>, e <strong>url<\/strong>.<\/p>\n\n\n\n<p>Portanto, vejamos abaixo os poss\u00edveis valores do atributo <strong>type<\/strong> da tag <strong>&lt;input&gt;<\/strong>:<\/p>\n\n\n\n<figure class=\"wp-block-table\"><table><thead><tr><th>Type<\/th><th>Descri\u00e7\u00e3o<\/th><th>HTML5?<\/th><\/tr><\/thead><tbody><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop1\">button<\/a><\/td><td>Define um bot\u00e3o<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop2\">checkbox<\/a><\/td><td>Define uma caixa de checagem<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop3\">color<\/a><\/td><td>Define uma caixa de cores<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop4\">date<\/a><\/td><td>Define um campo de data<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop5\">datetime-local<\/a><\/td><td>Define um campo de data e hor\u00e1rio<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop6\">email<\/a><\/td><td>Define um campo de e-mail<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop7\">file<\/a><\/td><td>Define uma campo para upload de arquivos<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop8\">hidden<\/a><\/td><td>Define um campo oculto<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop9\">image<\/a><\/td><td>Define uma imagem como <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/html-buttton\/\">bot\u00e3o de envio do formul\u00e1rio HTML<\/a><\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop10\">month<\/a><\/td><td>Define um controle de m\u00eas e ano<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop11\">number<\/a><\/td><td>Define um campo de intervalo de n\u00famero<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop12\">password<\/a><\/td><td>Define um campo de senha (mascarando-a)<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop13\">radio<\/a><\/td><td>Define um campo de op\u00e7\u00e3o (radio)<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop14\">range<\/a><\/td><td>Define um controle de intervalo<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop15\">reset<\/a><\/td><td>Define um bot\u00e3o para reiniciar aos valores iniciais<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop16\">search<\/a><\/td><td>Define um campo de pesquisa<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop17\">submit<\/a><\/td><td>Define um bot\u00e3o de envio do formul\u00e1rio HTML<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop18\">tel<\/a><\/td><td>Define um campo de telefone<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop19\">text<\/a><\/td><td>Define um campo de texto<\/td><td>&#8211;<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop20\">time<\/a><\/td><td>Define um campo de controle de hor\u00e1rio<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop21\">url<\/a><\/td><td>Define um campo de URL<\/td><td>\u2611<\/td><\/tr><tr><td><a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#subtop22\">week<\/a><\/td><td>Define um campo de controle de semana<\/td><td>\u2611<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p>Vejamos nos pr\u00f3ximos t\u00f3picos uma descri\u00e7\u00e3o e exemplos dos tipos acima.<br><a name=\"subtop1\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;button&#8221;&gt;<\/h4>\n\n\n\n<p>Esse tipo de campo define um bot\u00e3o clic\u00e1vel no formul\u00e1rio HTML. \u00c9 muito utilizado em conjunto ao JavaScript para a ativa\u00e7\u00e3o de um scrip. Portanto, tamb\u00e9m \u00e9 muito utilizado com o atributo <strong>onclick<\/strong>, pra realizar um script ao ser clicado.<\/p>\n\n\n\n<p>Vejamos o exemplo abaixo, onde incluiremos a fun\u00e7\u00e3o msg() no JavaScript e a mesma ser\u00e1 executada ao clicar no bot\u00e3o:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n  &lt;input type=\"button\" value=\"Clique Aqui\" onclick=\"msg()\"&gt;\n&lt;\/form&gt;\n\n&lt;script&gt;\nfunction msg() {\n  alert(\"Voc\u00ea clicou no bot\u00e3o!\");\n}\n&lt;\/script&gt;<\/pre>\n\n\n\n<p>Com esse exemplo, o navegador ir\u00e1 renderiz\u00e1 o seguinte bot\u00e3o:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex05.jpg\" alt=\"Input type button\" class=\"wp-image-3965\" width=\"123\" height=\"45\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex05.jpg 123w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex05-1x1.jpg 1w\" sizes=\"(max-width: 123px) 100vw, 123px\" \/><\/figure>\n\n\n\n<p>Posteriormente, ao clicar no bot\u00e3o, ser\u00e1 renderizada a fun\u00e7\u00e3o msg(), que executar\u00e1 um alerta com a frase &#8220;Voc\u00ea clicou no bot\u00e3o!&#8221;:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex06.jpg\" alt=\"Fun\u00e7\u00e3o msg() do exemplo com o alerta\" class=\"wp-image-3966\" width=\"569\" height=\"171\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex06.jpg 569w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex06-300x90.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex06-1x1.jpg 1w\" sizes=\"(max-width: 569px) 100vw, 569px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop2\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;checkbox&#8221;&gt;<\/h4>\n\n\n\n<p><span lang=\"pt\">O input&nbsp; do tipo checkbox define uma caixa de sele\u00e7\u00e3o. A caixa de sele\u00e7\u00e3o \u00e9 mostrada como uma caixa quadrada que pode ser marcada quando \u00e9 ativada. As caixas de sele\u00e7\u00e3o permitem que o usu\u00e1rio possa marcar uma ou mais op\u00e7\u00f5es. Voc\u00ea tamb\u00e9m pode ler posteriormente o nosso artigo sobre o <a href=\"https:\/\/www.homehost.com.br\/blog\/desenvolvedores\/checkbox-html\/\" target=\"_blank\" rel=\"noopener noreferrer\">checkbox<\/a>, onde apresentamos diversas maneiras de trabalhar com as caixas de sele\u00e7\u00e3o no formul\u00e1rio HTML.<\/span><\/p>\n\n\n\n<p>Portanto, vejamos um exemplo de como utilizar o input do tipo checkbox:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;input type=\"checkbox\" name=\"veiculo1\" value=\"bicicleta\"&gt;Eu tenho uma bicicleta&lt;br&gt;\n    &lt;input type=\"checkbox\" name=\"veiculo2\" value=\"carro\"&gt;Eu tenho um carro&lt;br&gt;\n    &lt;input type=\"checkbox\" name=\"veiculo3\" value=\"moto\"&gt;Eu tenho uma moto\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o exemplo acima ser\u00e1 renderizado pelo navegador como na imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex07.jpg\" alt=\"Exemplos utilizando o checkbox\" class=\"wp-image-3967\" width=\"243\" height=\"92\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex07.jpg 243w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex07-1x1.jpg 1w\" sizes=\"(max-width: 243px) 100vw, 243px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop3\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;color&#8221;&gt;<\/h4>\n\n\n\n<p>Este tipo de campo foi lan\u00e7ado no HTML5. Define uma caixa de cores, permitindo a sele\u00e7\u00e3o de uma cor. Voc\u00ea pode utilizar um c\u00f3digo <a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/tabela-de-cores-html\/\" target=\"_blank\" rel=\"noopener noreferrer\">hexadecimal de cor<\/a> para poder escolher um cor selecionada inicialmente. Ao ser clicado, esse tipo de campo abre uma caixa de sele\u00e7\u00e3o de cores. Portanto, vejamos o exemplo abaixo, onde deixaremos o valor #0000FF (azul) como valor de cor inicial:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Selecione sua cor preferida: &lt;input type=\"color\" name=\"favcor\" value=\"#0000FF\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o resultado do exemplo acima ser\u00e1 o formul\u00e1rio HTML abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex08-300x49.jpg\" alt=\"exemplo de uso do <input type=&quot;color&quot;&gt;\" class=\"wp-image-3968\" width=\"300\" height=\"49\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex08-300x49.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex08-1x1.jpg 1w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex08.jpg 312w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop4\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;date&#8221;&gt;<\/h4>\n\n\n\n<p>Outro tipo que foi lan\u00e7ado no HTML5 \u00e9 o &#8220;date&#8221;. O campo do tipo &#8220;date&#8221; define um selecionador de data. Portanto, o valor resultante inclui o ano, o m\u00eas e o dia. Contudo, esse tipo de campo n\u00e3o \u00e9 aceito por todos os navegadores, como por exemplo no Safari.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o o exemplo abaixo de um input do tipo date em um formul\u00e1rio HTML:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Data de nascimento: &lt;input type=\"date\" name=\"nascimento\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Com o exemplo acima, o resultado ser\u00e1 o formul\u00e1rio da imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex09.jpg\" alt=\"Exemplo utilizando o input type date\" class=\"wp-image-3969\" width=\"370\" height=\"51\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex09.jpg 370w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex09-300x41.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex09-1x1.jpg 1w\" sizes=\"(max-width: 370px) 100vw, 370px\" \/><\/figure>\n\n\n\n<p>Neste exemplo, repare que ao clicar no campo do tipo data, aparecer\u00e1 um campo de sele\u00e7\u00e3o de data como no do exemplo abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex10.jpg\" alt=\"Exemplo do campo de data\" class=\"wp-image-3970\" width=\"513\" height=\"282\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex10.jpg 513w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex10-300x165.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex10-1x1.jpg 1w\" sizes=\"(max-width: 513px) 100vw, 513px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop5\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;datetime-local&#8221;&gt;<\/h4>\n\n\n\n<p>Tamb\u00e9m \u00e9 um tipo de campo lan\u00e7ado com o HTML5. Assim como no input do tipo date, o tipo datetime-local define uma data, por\u00e9m com o acr\u00e9scimo de definir tamb\u00e9m um hor\u00e1rio. Tamb\u00e9m \u00e9 um recurso n\u00e3o muito bem aceito por todos navegadores.<\/p>\n\n\n\n<p>Portanto, vejamos abaixo um exemplo de um formul\u00e1rio HTML contendo um campo com datetime-local:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Data de nascimento: &lt;input type=\"datetime-local\" name=\"bdaytime\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Neste exemplo, o resultado ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex11.jpg\" alt=\"Exemplo utilizando datetime-local\" class=\"wp-image-3971\" width=\"429\" height=\"55\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex11.jpg 429w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex11-300x38.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex11-1x1.jpg 1w\" sizes=\"(max-width: 429px) 100vw, 429px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop6\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;email&#8221;&gt;<\/h4>\n\n\n\n<p>Tamb\u00e9m \u00e9 um tipo de campo que foi lan\u00e7ado no HTML5. Este tipo de campo define um e-mail. Ele \u00e9 muito \u00fatil porque j\u00e1 faz a valida\u00e7\u00e3o adequada para os campos de e-mail. Portanto, caso seja digitado um valor que n\u00e3o seja um endere\u00e7o de e-mail v\u00e1lido, o formul\u00e1rio ir\u00e1 recusar e informar que o mesmo n\u00e3o \u00e9 um e-mail v\u00e1lido.<\/p>\n\n\n\n<p>A maioria dos navegadores atuais j\u00e1 aceitam o input do tipo email. Por\u00e9m ainda h\u00e1 alguns navegadores, especialmente de dispositivos m\u00f3veis, que encontram dificuldades em realizar a valida\u00e7\u00e3o.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o o exemplo de formul\u00e1rio HTML abaixo, utilizando um input do tipo email:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    E-mail: &lt;input type=\"email\" name=\"e-mail\" placeholder=\"digite seu e-mail aqui\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Portanto, no exemplo acima, o resultado ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex12.jpg\" alt=\"Exemplo de input do tipo e-mail\" class=\"wp-image-3972\" width=\"289\" height=\"52\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex12.jpg 289w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex12-1x1.jpg 1w\" sizes=\"(max-width: 289px) 100vw, 289px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop7\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;file&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;file&#8221; define um campo de sele\u00e7\u00e3o de arquivos e um bot\u00e3o para upload de arquivos. Caso deseje permitir a sele\u00e7\u00e3o de v\u00e1rios artigos, pode adicionar o atributo <strong>&#8220;multiple&#8221;<\/strong>. Portanto, vejamos os exemplos abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;input type=\"file\" name=\"arquivos\"&gt;\n&lt;\/form&gt;\n&lt;br&gt;&lt;br&gt;&lt;br&gt;\n\n&lt;!-- Para permitir sele\u00e7\u00e3o de multiplos arquivos: --&gt;\n&lt;form&gt;\n    &lt;input type=\"file\" name=\"arquivos\" multiple&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Desta forma, o resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex13.jpg\" alt=\"Exemplo do input type file em formul\u00e1rio HTML\" class=\"wp-image-3973\" width=\"399\" height=\"152\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex13.jpg 399w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex13-300x114.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex13-1x1.jpg 1w\" sizes=\"(max-width: 399px) 100vw, 399px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop8\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;hidden&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;hidden&#8221; define um campo de entrada oculto. Dessa forma, atrav\u00e9s do campo oculto, \u00e9 poss\u00edvel inserir valores que n\u00e3o ser\u00e3o renderizados, mas ser\u00e3o enviados como dados ao enviar o formul\u00e1rio.<\/p>\n\n\n\n<p>Este recurso \u00e9 muito utilizado para armazenar o registro do <a href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/mysql\/o-que-e-um-banco-de-dados\/\" target=\"_blank\" rel=\"noopener noreferrer\">banco de dados<\/a> que precisa ser atualizado quando o formul\u00e1rio \u00e9 enviado.<\/p>\n\n\n\n<p>Observe que, apesar deste recurso n\u00e3o ficar vis\u00edvel no navegador, \u00e9 facilmente visualizado e tamb\u00e9m edit\u00e1vel atrav\u00e9s do c\u00f3digo fonte ou de ferramentas do desenvolvedor, dispon\u00edvel em qualquer navegador. Portanto, este recurso <strong>n\u00e3o deve ser utilizado como forma de seguran\u00e7a<\/strong>.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\"> &lt;input type=\"hidden\" id=\"inputOculto\" name=\"inputOculto\" value=\"meuvalor\"&gt;<\/pre>\n\n\n\n<p><a name=\"subtop9\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;image&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;image&#8221; define uma imagem como bot\u00e3o de envio do formul\u00e1rio HTML. Portanto, \u00e9 como se funciona-se como um input do tipo &#8220;<strong>submit&#8221;<\/strong>. Assim como na <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/html-img\/\"><strong>tag &lt;img&gt;<\/strong><\/a>, o caminho para a imagem \u00e9 especificado no atributo <strong>src<\/strong>.<\/p>\n\n\n\n<p>Voc\u00ea pode verificar o <a href=\"https:\/\/www.w3schools.com\/tags\/tryit.asp?filename=tryhtml5_input_type_image\" target=\"_blank\" rel=\"noopener noreferrer\">exemplo da w3c School sobre o &lt;input type=&#8221;image&#8221;&gt;<\/a>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form action=\"\/action_page.php\"&gt;\n  First name: &lt;input type=\"text\" name=\"fname\"&gt;&lt;br&gt;\n  Last name: &lt;input type=\"text\" name=\"lname\"&gt;&lt;br&gt;\n  &lt;input type=\"image\" src=\"img_submit.gif\" alt=\"Submit\" width=\"48\" height=\"48\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>O resultado do exemplo acima ser\u00e1 parecido com:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex14.jpg\" alt=\"Exemplo de uso do input type image em formul\u00e1rio HTML\" class=\"wp-image-3974\" width=\"317\" height=\"127\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex14.jpg 317w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex14-300x120.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex14-1x1.jpg 1w\" sizes=\"(max-width: 317px) 100vw, 317px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop10\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;month&#8221;&gt;<\/h4>\n\n\n\n<p>Este tipo de input tamb\u00e9m foi lan\u00e7ado com o HTML5. O input do tipo &#8220;month&#8221; define um m\u00eas e ano. Portanto, vejamos o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    M\u00eas e ano: &lt;input type=\"month\" name=\"mesano\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p><a name=\"subtop11\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;number&#8221;&gt;<\/h4>\n\n\n\n<p>Este tipo de campo tamb\u00e9m foi lan\u00e7ado com o HTML5 .O input do tipo &#8220;number&#8221; define um campo para inserir um n\u00famero. Este recurso \u00e9 muito util, pois permite tamb\u00e9m incluir restri\u00e7\u00f5es, ou seja, valores m\u00ednimos e\/ou m\u00e1ximos. Portanto, voc\u00ea pode utilizar os atributos abaixo para especificar as restri\u00e7\u00f5es:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>max &#8211; especifica o valor m\u00e1ximo permitido;<\/li>\n\n\n\n<li>min &#8211; especifica o valor m\u00ednimo permitido;<\/li>\n\n\n\n<li>step &#8211; especifica os intervalos num\u00e9ricos legais.<\/li>\n<\/ul>\n\n\n\n<p>Dessa forma, vejamos ent\u00e3o o exemplo abaixo para criar um formul\u00e1rio HTML com o input do tipo number:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Quantidade (entre 1 e 5): &lt;input type=\"number\" name=\"quantidade\" min=\"1\" max=\"5\"&gt;    \n&lt;\/form&gt;<\/pre>\n\n\n\n<p>O resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex15.jpg\" alt=\"Exemplo de formulario html com input type number\" class=\"wp-image-3975\" width=\"299\" height=\"54\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex15.jpg 299w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex15-1x1.jpg 1w\" sizes=\"(max-width: 299px) 100vw, 299px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop12\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;password&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;password&#8221; define um campo para digita\u00e7\u00e3o de senha. Portanto, os caracteres s\u00e3o mascarados.<\/p>\n\n\n\n<p>Observe que qualquer formul\u00e1rio que envolva informa\u00e7\u00e3o confidencial, como senha, deve ser veiculado por HTTPS. Dessa forma, a p\u00e1gina manter\u00e1 um n\u00edvel de seguran\u00e7a adequado.<\/p>\n\n\n\n<p>Vejamos o exemplo abaixo de um campo de senha para o formul\u00e1rio HTML:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;input type=\"password\" name=\"senha\" placeholder=\"Digite sua Senha\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Portanto, com o exemplo acima, inicialmente o resultado ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex16.jpg\" alt=\"Input do tipo Senha em formul\u00e1rio HTML\" class=\"wp-image-3976\" width=\"226\" height=\"48\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex16.jpg 226w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex16-1x1.jpg 1w\" sizes=\"(max-width: 226px) 100vw, 226px\" \/><\/figure>\n\n\n\n<p>Posteriormente, ao digitar qualquer coisa no campo de senha, o conte\u00fado ficar\u00e1 mascarado como no exemplo abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex17.jpg\" alt=\"Senha mascarada\" class=\"wp-image-3977\" width=\"222\" height=\"47\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex17.jpg 222w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex17-1x1.jpg 1w\" sizes=\"(max-width: 222px) 100vw, 222px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop13\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;radio&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;radio&#8221; define um bot\u00e3o de op\u00e7\u00e3o. Muito utilizados em formas de grupos, ou seja, um conjunto de op\u00e7\u00f5es relacionadas. Dessa forma, o usu\u00e1rio poder\u00e1 selecionar apenas um bot\u00e3o do tipo radio pertencente a um mesmo grupo.<\/p>\n\n\n\n<p>Para manter um grupo, o nome dos radios devem ser o mesmo, portanto, receber\u00e1 o mesmo valor no atributo name. Dessa forma, ao selecionar qualquer bot\u00e3o do tipo radio, qualquer outro bot\u00e3o radio do mesmo grupo ser\u00e1 desmarcado automaticamente.<\/p>\n\n\n\n<p><a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/botao-bootstrap\/\">Para definir um valor exclusivo para cada bot\u00e3o<\/a> radio pertencente a um mesmo grupo, basta utilizar o atributo value. Esse valor n\u00e3o ser\u00e1 mostrado para o usu\u00e1rio, mas ser\u00e1 enviado para o servidor. Portanto, ao enviar um formul\u00e1rio que contenha um grupo de radio, o valor desse grupo ser\u00e1 o valor do atributo value do radio selecionado.<\/p>\n\n\n\n<p>Vejamos o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;p&gt;Qual sua idade?&lt;\/p&gt;\n    &lt;input type=\"radio\" name=\"idade\" value=\"18_22\"&gt;18 a 22 &lt;br&gt;\n    &lt;input type=\"radio\" name=\"idade\" value=\"23_30\"&gt;23 a 30 &lt;br&gt;\n    &lt;input type=\"radio\" name=\"idade\" value=\"mais31\"&gt;acima de 31&lt;br&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex18.jpg\" alt=\"Exemplo utilizando input type radio em formul\u00e1rio HTML\" class=\"wp-image-3978\" width=\"150\" height=\"147\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex18.jpg 150w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex18-1x1.jpg 1w\" sizes=\"(max-width: 150px) 100vw, 150px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop14\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;range&#8221;&gt;<\/h4>\n\n\n\n<p>Este tipo de campo foi lan\u00e7ado com o HTML5. O input do tipo &#8220;range&#8221; define um controle equivalente a um controle deslizante. O intervalo padr\u00e3o \u00e9 de 0 a 100. Por\u00e9m, atrav\u00e9s dos atributos, \u00e9 poss\u00edvel alterar esse intervalo. Portanto os atributos abaixo s\u00e3o muito utilizados nesse tipo de input:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>max &#8211; especifica o valor m\u00e1ximo permitido;<\/li>\n\n\n\n<li>min &#8211; especifica o valor m\u00ednimo permitido;<\/li>\n\n\n\n<li>step &#8211; especifica os intervalos num\u00e9ricos.<\/li>\n<\/ul>\n\n\n\n<p>Dessa forma, vejamos abaixo um exemplo de formul\u00e1rio HTML com o input do tipo range:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Defina seu n\u00edvel de satisfa\u00e7\u00e3o:&lt;br&gt;\n    pouco satisfeito\n    &lt;input type=\"range\" name=\"satisfacao\" min=\"0\" max=\"10\"&gt;\n    muito satisfeito\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Assim, o resultado do c\u00f3digo de exemplo ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex19.jpg\" alt=\"Exemplo de input do tipo range em formul\u00e1rio HTML\" class=\"wp-image-3979\" width=\"445\" height=\"89\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex19.jpg 445w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex19-300x60.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex19-1x1.jpg 1w\" sizes=\"(max-width: 445px) 100vw, 445px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop15\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;reset&#8221;&gt;<\/h4>\n\n\n\n<p>O input do tipo &#8220;reset&#8221; define um bot\u00e3o para reiniciar os valores digitados pelo usu\u00e1rio no formul\u00e1rio para seus valores iniciais. Portanto, esse bot\u00e3o \u00e9 muito \u00fatil. Por\u00e9m, ao mesmo tempo, \u00e9 recomendo evitar o seu uso de forma descuidada. Isso \u00e9 recomendado, pois \u00e9 muito inc\u00f4modo ao usu\u00e1rio ter seu formul\u00e1rio reiniciado por clicar em um bot\u00e3o por engano.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;input type=\"reset\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p><a name=\"subtop16\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;search&#8221;&gt;<\/h4>\n\n\n\n<p>Este tipo de input tamb\u00e9m foi lan\u00e7ado com o HTML5. O input do tipo &#8220;search&#8221; define um campo de pesquisa. Dessa forma, ao digitar um texto, o mesmo ir\u00e1 receber uma string de pesquisa.<\/p>\n\n\n\n<p>\u00c9 importante definir um nome para este campo de pesquisa. Sem isso, nada ser\u00e1 enviado. Segundo o W3C, o nome mais comum para campos de pesquisa \u00e9 &#8220;q&#8221;. Portanto, vejamos o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Pesquisar: &lt;input type=\"search\" name=\"q\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex20.jpg\" alt=\"Uso do input type Search no Formul\u00e1rio HTML\" class=\"wp-image-3980\" width=\"312\" height=\"44\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex20.jpg 312w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex20-300x42.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex20-1x1.jpg 1w\" sizes=\"(max-width: 312px) 100vw, 312px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop17\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;submit&#8221;&gt;<\/h4>\n\n\n\n<p>Um dos tipos de campos mais importantes do formul\u00e1rio HTML, o input do tipo &#8220;submit&#8221; define um bot\u00e3o de envio. Portanto, ao clicar no submit, todos os valores do formul\u00e1rio ser\u00e3o enviados para o servidor atrav\u00e9s do m\u00e9todo escolhido na tag <strong>&lt;form&gt;<\/strong>, e executando a a\u00e7\u00e3o definida no atributo <strong>action<\/strong> do <strong>&lt;form&gt;<\/strong>.&nbsp; \u00c9 comum utilizar o atributo <strong>value<\/strong> para definir uma palavra ou frase que ser\u00e1 renderizada dentro desse bot\u00e3o.<\/p>\n\n\n\n<p>Portanto, vejamos o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;input type=\"submit\" value=\"Enviar Formul\u00e1rio\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex21.jpg\" alt=\"Input type submit em formul\u00e1rio HTML\" class=\"wp-image-3981\" width=\"171\" height=\"47\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex21.jpg 171w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex21-1x1.jpg 1w\" sizes=\"(max-width: 171px) 100vw, 171px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop18\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;tel&#8221;&gt;<\/h4>\n\n\n\n<p>Esse tipo de campo foi lan\u00e7ado junto ao HTML5. O input do tipo &#8220;tel&#8221; define um campo para inserir um n\u00famero de telefone. Por\u00e9m, esse tipo de input ainda \u00e9 pouco aceito pelos navegadores. Nesse caso, os navegadores que n\u00e3o possuem suporte para o &#8220;tel&#8221; transformam esse input no type=&#8221;text&#8221; padr\u00e3o. Portanto, vejamos o exemplo abaixo para utilizar o &#8220;tel&#8221; no formul\u00e1rio html:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Telefone: &lt;input type=\"tel\" name=\"usertel\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p><a name=\"subtop19\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;text&#8221;&gt;<\/h4>\n\n\n\n<p>Um dos campos mais importantes de um formul\u00e1rio HTML, \u00e9 provavelmente o mais utilizado e mais aceito por todos navegadores. O input do tipo &#8220;text&#8221; define um campo de preenchimento de texto de uma linha. Por padr\u00e3o, este tipo de campo costuma ter o comprimento equivalente a 20 caracteres.<\/p>\n\n\n\n<p>Enfim, vejamos ent\u00e3o o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Nome: &lt;input type=\"text\" name=\"nome\"&gt;&lt;br&gt;\n    Sobrenome: &lt;input type=\"text\" name=\"sobrenome\"&gt;&lt;br&gt;\n    Endere\u00e7o: &lt;input type=\"text\" name=\"endereco\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, com o exemplo acima, teremos como resultado o formul\u00e1rio html abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex22.jpg\" alt=\"Exemplo de input type text\" class=\"wp-image-3982\" width=\"330\" height=\"118\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex22.jpg 330w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex22-300x107.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex22-1x1.jpg 1w\" sizes=\"(max-width: 330px) 100vw, 330px\" \/><\/figure>\n\n\n\n<p><br><a name=\"subtop20\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;time&#8221;&gt;<\/h4>\n\n\n\n<p>Esse tipo de campo foi lan\u00e7ado junto ao HTML5. O input do tipo &#8220;time&#8221; define um campo para inserir um hor\u00e1rio. Portanto, vejamos o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">Escolha o hor\u00e1rio: &lt;input type=\"time\" name=\"usr_horario\"&gt;<\/pre>\n\n\n\n<p><a name=\"subtop21\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;url&#8221;&gt;<\/h4>\n\n\n\n<p>Esse tipo de campo foi lan\u00e7ado junto ao HTML5. O input do tipo &#8220;url&#8221; define um campo para inserir uma URL. Desta forma, esse tipo de campo realizar\u00e1 uma valida\u00e7\u00e3o autom\u00e1tica da URL. Portanto, vejamos o exemplo abaixo de um input do tipo URL em um formul\u00e1rio HTML:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Link do seu WebSite: &lt;input type=\"url\" name=\"webpage\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p><a name=\"subtop22\"><\/a><\/p>\n\n\n\n<h4 class=\"wp-block-heading\">&lt;input type=&#8221;week&#8221;&gt;<\/h4>\n\n\n\n<p>Esse tipo de campo foi lan\u00e7ado junto ao HTML5. O input do tipo &#8220;week&#8221; define um campo de controle de semana e ano. Por\u00e9m, n\u00e3o \u00e9 levado em considera\u00e7\u00e3o o fuso hor\u00e1rio.&nbsp; Com isso, vejamos ent\u00e3o o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    Selecione uma semana: &lt;input type=\"week\" name=\"semana\"&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p><a name=\"top7\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"A_tag-2\"><\/span>A tag &lt;textarea&gt;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>A tag <strong>&lt;textarea&gt;<\/strong> nada mais \u00e9 do que uma \u00e1rea de texto. Ou seja, define um controle de entrada de texto de v\u00e1rias linhas. Diferente do input do tipo &#8220;text&#8221;, a tag textarea pode possuir v\u00e1rias linhas. Portanto, as \u00e1reas de texto podem conter um n\u00famero ilimitado de caracteres.<\/p>\n\n\n\n<p>O tamanho de uma \u00e1rea de texto pode ser especificado pelos atributos <strong>cols<\/strong> e <strong>rows.<\/strong> Por\u00e9m, o mais aduado na atualidade \u00e9 utilizar as propriedades do CSS.<\/p>\n\n\n\n<p>Diferentemente da tag <strong>&lt;input&gt;<\/strong>, a \u00e1rea de texto possui uma tag de abertura <strong>&lt;textarea&gt;<\/strong> e uma de fechamento <strong>&lt;\/textarea&gt;<\/strong>. Caso voc\u00ea queria deixar um texto pr\u00e9-digitado nessa \u00e1rea, basta digitar esse texto dentro dessas tags.<\/p>\n\n\n\n<p>Portanto, vejamos abaixo um exemplo de formul\u00e1rio HTML utilizando duas \u00e1reas de texto:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;form&gt;\n    &lt;textarea&gt;&lt;\/textarea&gt;\n\n    &lt;textarea&gt;Area de texto com um texto inicial dentro&lt;\/textarea&gt;\n&lt;\/form&gt;<\/pre>\n\n\n\n<p>Dessa forma, o resultado do exemplo acima ser\u00e1:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex23.jpg\" alt=\"Exemplos de <textarea&gt; em formul\u00e1rio HTML\" class=\"wp-image-3983\" width=\"219\" height=\"117\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex23.jpg 219w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex23-1x1.jpg 1w\" sizes=\"(max-width: 219px) 100vw, 219px\" \/><\/figure>\n\n\n\n<p><br><a name=\"top8\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Criando_um_formulario_HTML\"><\/span>Criando um formul\u00e1rio HTML<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Agora que j\u00e1 sabemos como funciona um formul\u00e1rio HTML, assim como seus elementos e m\u00e9todos, vamos come\u00e7ar a criar o nosso pr\u00f3prio formul\u00e1rio. Nosso formul\u00e1rio conter\u00e1 elementos HTML para sua estrutura e iremos estiliz\u00e1-lo atrav\u00e9s do CSS. Vamos utilizar uma <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/estilos-html\/\">folha de estilo<\/a> externa, portanto, utilizaremos a <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/links-html\/\" target=\"_blank\" rel=\"noopener noreferrer\">tag link<\/a> para chamar o nosso <strong>estilo.css<\/strong>.<\/p>\n\n\n\n<p>Inicialmente vamos definir os campos do nosso formul\u00e1rio HTML:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Formul\u00e1rio com m\u00e9todo POST;<\/li>\n\n\n\n<li>2 campos de texto: nome e telefone (n\u00e3o utilizaremos o tipo &#8220;tel&#8221; por quest\u00f5es de incompatibilidade);<\/li>\n\n\n\n<li>1 campo de e-mail;<\/li>\n\n\n\n<li>1 grupo radio para &#8220;deseja receber nossas novidades?&#8221; contendo duas op\u00e7\u00f5es: sim e n\u00e3o;<\/li>\n\n\n\n<li>1 \u00e1rea de texto (mensagem);<\/li>\n\n\n\n<li>1 bot\u00e3o de enviar.<\/li>\n<\/ul>\n\n\n\n<p>Portanto, agora podemos iniciar o c\u00f3digo para o nosso formul\u00e1rio.<br><a name=\"top9\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Codigo_HTML_do_nosso_formulario\"><\/span>C\u00f3digo HTML do nosso formul\u00e1rio<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Inicialmente, vamos desenvolver a estrutura do nosso HTML. Lembre-se de salvar esse arquivo com a extens\u00e3o .html ou .php. No caso do nosso exemplos, utilizamos o nome index.php como nome do arquivo. Vejamos ent\u00e3o o nosso c\u00f3digo inicial:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"pt-br\"&gt;\n&lt;head&gt;\n    &lt;title&gt;Formul\u00e1rio HTML&lt;\/title&gt;\n    &lt;meta charset=\"utf-8\"\/&gt;\n    &lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"estilo.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;form class=\"formulario\" method=\"post\"&gt; \n        &lt;p&gt; Envie uma mensagem preenchendo o formul\u00e1rio abaixo&lt;\/p&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"nome\"&gt;Seu Nome:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"nome\" name=\"nome\" placeholder=\"Digite seu nome*\" required&gt;\n        &lt;\/div&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"telefone\"&gt;Seu Telefone:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"telefone\" name=\"telefone\" placeholder=\"Digite seu Telefone\"&gt;\n        &lt;\/div&gt;\n\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"email\"&gt;Seu E-Mail:&lt;\/label&gt;\n            &lt;input type=\"email\" id=\"email\" name=\"email\" placeholder=\"Digite seu E-Mail*\" required&gt;\n        &lt;\/div&gt;        \n        &lt;div class=\"field radiobox\"&gt;\n            &lt;span&gt;Deseja receber nossas novidades?&lt;\/span&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"sim\" value=\"sim\" checked&gt;&lt;label for=\"sim\"&gt;Sim&lt;\/label&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"nao\" value=\"nao\"&gt;&lt;label for=\"nao\"&gt;N\u00e3o&lt;\/label&gt;\n        &lt;\/div&gt;\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"mensagem\"&gt;Sua mensagem:&lt;\/label&gt;\n            &lt;textarea name=\"mensagem\" id=\"mensagem\" placeholder=\"Mensagem*\" required&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n\n        &lt;input type=\"submit\" name=\"acao\" value=\"Enviar\"&gt;\n    &lt;\/form&gt;\n&lt;\/body&gt;\n&lt;\/html&gt;<\/pre>\n\n\n\n<p>Observe que no exemplo acima, utilizamos o metadados charset, tamb\u00e9m j\u00e1 definimos nosso t\u00edtulo (&#8220;Formul\u00e1rio HTML&#8221;) e j\u00e1 criamos a tag link para o nosso <strong>estilo.css<\/strong>.<\/p>\n\n\n\n<p>Observe tamb\u00e9m que separamos os nossos formul\u00e1rios com divs da classe field. Isso n\u00e3o far\u00e1 nenhuma diferen\u00e7a no resultado do nosso formul\u00e1rio, por\u00e9m nos permite melhor controle na estiliza\u00e7\u00e3o.<\/p>\n\n\n\n<p>Observe tamb\u00e9m que separamos nosso grupo de radios em uma div com a classe radiobox, pois essa receber\u00e1 um estilo diferente.<\/p>\n\n\n\n<p>Portanto, inicialmente, nosso formul\u00e1rio se parecer\u00e1 como a imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex24.jpg\" alt=\"Exemplo de Formul\u00e1rio HTML\" class=\"wp-image-3985\" width=\"470\" height=\"261\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex24.jpg 470w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex24-300x167.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex24-1x1.jpg 1w\" sizes=\"(max-width: 470px) 100vw, 470px\" \/><\/figure>\n\n\n\n<p><br><a name=\"top10\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Estilizando_nosso_formulario_HTML\"><\/span>Estilizando nosso formul\u00e1rio HTML<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Vamos agora aplicar os estilos ao nosso formul\u00e1rio. N\u00e3o ser\u00e1 nada muito complexo, faremos apenas um estiliza\u00e7\u00e3o bem simples. Para isso, utilizaremos o CSS atrav\u00e9s do nosso arquivo <strong>estilo.css<\/strong>. Lembre-se de salv\u00e1-lo na mesma pasta do seu arquivo do formul\u00e1rio. Portanto, vejamos agora o nosso c\u00f3digo CSS abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">.formulario{\n    width: 400px;\n    padding: 30px;\n    border:1px solid #ccc;\n}\n.formulario p{\n    width: 100%;\n    font-size: 1.5em;\n}\n.field{\n    width: 100%;\n    margin: 15px 0;\n}\n.field label, \n.field span{\n    padding-left: 10px;\n    font-size: 1.1em;\n    display: block;\n    width: 100%;\n}\n.radiobox label{\n    width: auto;\n    display: inline-block;\n}\ninput[type=text],\ninput[type=email],\ntextarea{\n    width: 100%;\n    padding-left: 10px;\n    height: 30px;\n    line-height: 30px;\n    border-radius: 15px;\n    border: 1px solid #ccc;\n    outline: none;\n}\ninput#nao{\n    margin-left: 30px;\n}\ntextarea{\n    line-height: 20px;\n    padding: 10px;\n    height: 90px;\n    resize: none;\n}\ninput[type=submit]{\n    display: block;\n    background-color: #ccc;\n    height: 35px;\n    border: none;\n    outline: 0;\n    cursor: pointer;\n    width: 100px;\n    margin: 0 auto;\n    text-align: center;\n    border-radius: 15px;\n}<\/pre>\n\n\n\n<p>Com este c\u00f3digo, nosso formul\u00e1rio j\u00e1 come\u00e7a a ganhar um aspecto visual melhor. Vejamos ent\u00e3o o resultado na imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex25.jpg\" alt=\"Exemplo de formul\u00e1rio HTML com CSS\" class=\"wp-image-3986\" width=\"599\" height=\"795\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex25.jpg 599w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex25-226x300.jpg 226w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex25-1x1.jpg 1w\" sizes=\"(max-width: 599px) 100vw, 599px\" \/><\/figure>\n\n\n\n<p>Enfim, finalizamos a cria\u00e7\u00e3o da estrutura do nosso formul\u00e1rio HTML, assim como sua estiliza\u00e7\u00e3o.<br><a name=\"top11\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Recebendo_os_dados_do_formulario_com_PHP\"><\/span>Recebendo os dados do formul\u00e1rio com PHP<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>Agora que j\u00e1 criamos nosso formul\u00e1rio HTML e tamb\u00e9m j\u00e1 criamos um estilo para ele, vamos come\u00e7ar a praticar suas funcionalidades.<\/p>\n\n\n\n<p>Vamos continuar utilizando o c\u00f3digo anterior como parte do nosso exemplo.<\/p>\n\n\n\n<p>O objetivo neste t\u00f3pico ser\u00e1 receber os dados do formul\u00e1rio e poder manipul\u00e1-los atrav\u00e9s do PHP. Desta forma, vamos come\u00e7ar fazendo uma verifica\u00e7\u00e3o. A primeira verifica\u00e7\u00e3o que devemos fazer \u00e9 se o bot\u00e3o submit foi clicado, ou seja, se existe o valor &#8220;acao&#8221; atrav\u00e9s do post.<\/p>\n\n\n\n<p>Para isso, vamos utilizar o $_POST[&#8220;&#8221;] para conseguir pegar o valor dos nossos elementos do formul\u00e1rio HTML.<\/p>\n\n\n\n<p>Portanto, caso exista o valor do $_POST[&#8220;acao&#8221;], significa que nosso bot\u00e3o foi clicado e que nosso formul\u00e1rio foi devidamente preenchido. Ent\u00e3o, vamos solicitar que ao confirmar essa a\u00e7\u00e3o, seja escrito, atrav\u00e9s do comando <strong>echo<\/strong> do PHP o seguinte c\u00f3digo: <strong>&lt;script&gt;alert(&#8216;Formul\u00e1rio Foi enviado pelo m\u00e9todo POST&#8217;)&lt;\/script&gt;<\/strong>. Dessa forma, ao clicar em enviar, receberemos um alerta com esta mensagem. Para isso, basta incluir o exemplo abaixo no c\u00f3digo do formul\u00e1rio. Recomendamos que escreva este c\u00f3digo dentro das tags <strong>&lt;body&gt;<\/strong> e ap\u00f3s as tags <strong>&lt;form&gt;<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php\n    if (isset($_POST[\"acao\"])){\n    echo \"&lt;script&gt;alert('Formul\u00e1rio Foi enviado pelo m\u00e9todo POST')&lt;\/script&gt;\";\n    }\n?&gt;<\/pre>\n\n\n\n<p>Assim, caso tudo ocorra corretamente, o resultado ao clicar em enviar, ser\u00e1 o seguinte alerta no nosso navegador:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex26.jpg\" alt=\"Alerta no navegador\" class=\"wp-image-3987\" width=\"565\" height=\"171\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex26.jpg 565w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex26-300x91.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex26-1x1.jpg 1w\" sizes=\"(max-width: 565px) 100vw, 565px\" \/><\/figure>\n\n\n\n<p><br><a name=\"top12\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Apresentando_os_dados_do_formulario_na_tela_atraves_do_PHP\"><\/span>Apresentando os dados do formul\u00e1rio na tela atrav\u00e9s do PHP<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Agora que j\u00e1 verificamos a exist\u00eancia do $_POST[&#8220;acao&#8221;] e descobrimos que nosso formul\u00e1rio est\u00e1 funcionando corretamente, vamos para o pr\u00f3ximo passo.<\/p>\n\n\n\n<p>Vamos ent\u00e3o recolher todos os dados do nosso formul\u00e1rio. <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/4-motivos-para-criar-site-com-homehost\/\">Para isso criaremos<\/a> algumas vari\u00e1veis que receber\u00e3o o valor do $_POST[&#8220;&#8221;] que queremos. Para isso, utilizando ainda o nosso formul\u00e1rio HTML, vamos modificar nosso c\u00f3digo anterior, conforme o exemplo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php\n    if (isset($_POST[\"acao\"])){\n        $nome=$_POST[\"nome\"];\n        $telefone=$_POST[\"telefone\"];\n        $email=$_POST[\"email\"];\n        $radio=$_POST[\"novidades\"];\n        $msg=$_POST[\"mensagem\"];\n    }\n?&gt;<\/pre>\n\n\n\n<p>Pronto! Conclu\u00edmos o recebimento dos dados, e agora todos os dados do formul\u00e1rio foram armazenados em nossas vari\u00e1veis. Mas e agora?<\/p>\n\n\n\n<p>Vamos continuar praticando, criando uma mensagem din\u00e2mica que ser\u00e1 renderizada no nosso navegador. Faremos uma segunda verifica\u00e7\u00e3o com a nossa vari\u00e1vel $radio, de forma que a mensagem modificar\u00e1 para cada um dos dois valores poss\u00edveis.<\/p>\n\n\n\n<p>Vejamos ent\u00e3o o c\u00f3digo abaixo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php\n    if (isset($_POST[\"acao\"])){\n        $nome=$_POST[\"nome\"];\n        $telefone=$_POST[\"telefone\"];\n        $email=$_POST[\"email\"];\n        $radio=$_POST[\"novidades\"];\n        $msg=$_POST[\"mensagem\"];\n\n        echo \"&lt;p&gt;Ol\u00e1, \".$nome.\"&lt;\/p&gt;\";\n        echo \"&lt;p&gt;Seu email \u00e9: \".$email.\"&lt;\/p&gt;\";\n        echo \"&lt;p&gt;Seu telefone \u00e9: \".$telefone.\"&lt;\/p&gt;\";\n        if ($radio==\"sim\"){\n            echo \"&lt;p&gt;Voc\u00ea escolheu receber nossas novidades&lt;\/p&gt;\";\n        }elseif ($radio==\"nao\") {\n            echo \"&lt;p&gt;Voc\u00ea escolheu N\u00c3O receber nossas novidades&lt;\/p&gt;\";\n        }\n        echo \"&lt;p&gt;Sua mensagem \u00e9:&lt;br\/&gt;\".$msg.\"&lt;\/p&gt;\";\n    }\n?&gt;<\/pre>\n\n\n\n<p>Portanto, vamos agora preencher nosso formul\u00e1rio da seguinte forma:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex27.jpg\" alt=\"Preenchendo nosso Formulario HTML\" class=\"wp-image-3988\" width=\"603\" height=\"795\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex27.jpg 603w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex27-228x300.jpg 228w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex27-1x1.jpg 1w\" sizes=\"(max-width: 603px) 100vw, 603px\" \/><\/figure>\n\n\n\n<p>Dessa forma, ao clicar em enviar, todo nosso c\u00f3digo <a href=\"https:\/\/www.homehost.com.br\/blog\/criar-sites\/caracteres-especiais-acentos-html\/\">PHP renderizar\u00e1 novas mensagens abaixo do formul\u00e1rio HTML<\/a>, conforme na imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex28.jpg\" alt=\"Resultado do c\u00f3digo PHP\" class=\"wp-image-3989\" width=\"611\" height=\"491\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex28.jpg 611w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex28-300x241.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex28-1x1.jpg 1w\" sizes=\"(max-width: 611px) 100vw, 611px\" \/><\/figure>\n\n\n\n<p>Para que voc\u00ea possa utilizar para estudos, segue o c\u00f3digo final do nosso documento<strong> form-exemplo.html<\/strong>:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"pt-br\"&gt;\n&lt;head&gt;\n    &lt;title&gt;Formul\u00e1rio HTML&lt;\/title&gt;\n    &lt;meta charset=\"utf-8\"\/&gt;\n    &lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"estilo.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;form action=\"exibir-dados.php\" class=\"formulario\" method=\"post\"&gt; \n        &lt;p&gt; Envie uma mensagem preenchendo o formul\u00e1rio abaixo&lt;\/p&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"nome\"&gt;Seu Nome:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"nome\" name=\"nome\" placeholder=\"Digite seu nome*\" required&gt;\n        &lt;\/div&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"telefone\"&gt;Seu Telefone:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"telefone\" name=\"telefone\" placeholder=\"Digite seu Telefone\"&gt;\n        &lt;\/div&gt;\n\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"email\"&gt;Seu E-Mail:&lt;\/label&gt;\n            &lt;input type=\"email\" id=\"email\" name=\"email\" placeholder=\"Digite seu E-Mail*\" required&gt;\n        &lt;\/div&gt;        \n        &lt;div class=\"field radiobox\"&gt;\n            &lt;span&gt;Deseja receber nossas novidades?&lt;\/span&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"sim\" value=\"sim\" checked&gt;&lt;label for=\"sim\"&gt;Sim&lt;\/label&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"nao\" value=\"nao\"&gt;&lt;label for=\"nao\"&gt;N\u00e3o&lt;\/label&gt;\n        &lt;\/div&gt;\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"mensagem\"&gt;Sua mensagem:&lt;\/label&gt;\n            &lt;textarea name=\"mensagem\" id=\"mensagem\" placeholder=\"Mensagem*\" required&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n\n        &lt;input type=\"submit\" name=\"acao\" value=\"Enviar\"&gt;\n    &lt;\/form&gt;\n\n\n\n&lt;\/body&gt;\n&lt;\/html&gt;<\/pre>\n\n\n\n<p>Arquivo <strong>exibir-dados.php<\/strong> , que ir\u00e1 receber e tratar o formul\u00e1rio:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php \n\nif (isset($_POST[\"acao\"])){ \n\n   $nome=$_POST[\"nome\"]; \n   $telefone=$_POST[\"telefone\"]; \n   $email=$_POST[\"email\"]; \n   $radio=$_POST[\"novidades\"]; \n   $msg=$_POST[\"mensagem\"]; \n\n   echo \"&lt;p&gt;Ol\u00e1, \".$nome.\"&lt;\/p&gt;\"; echo \"&lt;p&gt;Seu email \u00e9: \".$email.\"&lt;\/p&gt;\"; \n\n   echo \"&lt;p&gt;Seu telefone \u00e9: \".$telefone.\"&lt;\/p&gt;\"; \n\n   if ($radio==\"sim\"){ \n      echo \"&lt;p&gt;Voc\u00ea escolheu receber nossas novidades&lt;\/p&gt;\"; \n   }\n   elseif ($radio==\"nao\") { \n      echo \"&lt;p&gt;Voc\u00ea escolheu N\u00c3O receber nossas novidades&lt;\/p&gt;\"; \n   } \n   echo \"&lt;p&gt;Sua mensagem \u00e9:&lt;br\/&gt;\".$msg.\"&lt;\/p&gt;\"; \n} \n\n?&gt;<\/pre>\n\n\n\n<p>Pronto! Finalmente, conclu\u00edmos nosso exemplo pr\u00e1tico. Com isso voc\u00ea j\u00e1 estar\u00e1 apto a criar suas pr\u00f3prias aplica\u00e7\u00f5es com o c\u00f3digo HTML em conjunto ao PHP atuando do lado do servidor! Voc\u00ea pode fazer o <a href=\"https:\/\/github.com\/homehost\/formulario-html-php\/archive\/master.zip\" target=\"_blank\" rel=\"noopener noreferrer\">download aqui<\/a> dos c\u00f3digos destes exemplos.<br><a name=\"top13\"><\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Enviando_dados_do_formulario_por_e-mail_com_o_PHP_Mailer\"><\/span>Enviando dados do formul\u00e1rio por e-mail com o PHP Mailer<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"O_que_e_o_PHPMailer\"><\/span>O que \u00e9 o PHPMailer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>O PHPMailer \u00e9 uma classe do PHP Open Source, ou seja, de uso livre e gratuito. Esta classe permite o envio de e-mails via&nbsp;<strong>SMTP<\/strong>. Al\u00e9m de ser f\u00e1cil de usar, j\u00e1 vem com fun\u00e7\u00f5es prontas como: arquivos em anexo, BCC, entre outros.<\/p>\n\n\n\n<p>Portanto, vamos configurar nosso formul\u00e1rio HTML, com o uso do PHP, para que ao receber os dados do formul\u00e1rio, sejam enviados para o nosso endere\u00e7o e-mail!<br><a name=\"top15\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Fazendo_a_instalacao_do_PHPMailer\"><\/span>Fazendo a instala\u00e7\u00e3o do PHPMailer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Em nosso reposit\u00f3rio com os exemplos de c\u00f3digos, inclu\u00edmos o PHPMailer. Voc\u00ea pode <a href=\"https:\/\/github.com\/homehost\/formulario-html-php\/archive\/master.zip\" target=\"_blank\" rel=\"noopener noreferrer\">fazer aqui o download<\/a> dos exemplos j\u00e1 com o PHPMailer.<\/p>\n\n\n\n<p>Caso prefira, voc\u00ea pode tamb\u00e9m fazer o download de vers\u00f5es futuras mais atualizadas atrav\u00e9s da <a href=\"https:\/\/github.com\/PHPMailer\/PHPMailer\" target=\"_blank\" rel=\"noopener noreferrer\">p\u00e1gina do GitHub do PHPMailer<\/a>.<\/p>\n\n\n\n<p>Tamb\u00e9m \u00e9 poss\u00edvel fazer a instala\u00e7\u00e3o via composer. Enfim, ap\u00f3s o download, extraia a pasta para o mesmo local onde se encontra o c\u00f3digo do seu formul\u00e1rio. Recomendamos renomear a pasta do arquivo extra\u00eddo para <strong>phpmailer<\/strong>.<br><a name=\"top16\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Criando_uma_classe_para_configurar_o_envio_de_e-mail_atraves_do_PHPMailer\"><\/span>Criando uma classe para configurar o envio de e-mail atrav\u00e9s do PHPMailer<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Vamos agora criar, na mesma pasta do formul\u00e1rio, um novo arquivo chamado <strong>email.php<\/strong>. Desta forma, o conte\u00fado final da nossa pasta ser\u00e1 algo como o exemplo da imagem abaixo:<\/p>\n\n\n\n<figure class=\"wp-block-image aligncenter\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex30.jpg\" alt=\"Pastas do Formul\u00e1rio HTML\" class=\"wp-image-3991\" width=\"419\" height=\"115\" srcset=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex30.jpg 419w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex30-300x82.jpg 300w, https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/ex30-1x1.jpg 1w\" sizes=\"(max-width: 419px) 100vw, 419px\" \/><\/figure>\n\n\n\n<p>Neste arquivo vamos incluir toda a configura\u00e7\u00e3o que precisamos fazer para poder utilizar o PHPMailer, al\u00e9m de incluir nossos dados obtidos atrav\u00e9s do m\u00e9todo POST, assim como configurar a mensagem que receberemos em nosso e-mail. Portanto, no nosso arquivo email.php, vamos inserir o seguinte c\u00f3digo:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php\n    $nome=$_POST['nome'];\n    $telefone=$_POST['telefone'];\n    $email=$_POST['email'];\n    $radio=$_POST['novidades'];\n    $date=date(\"d\/m\/Y\");\n    $msg=$_POST['mensagem'];\n    $mensagem= 'Esta mensagem foi enviada atrav\u00e9s do formul\u00e1rio&lt;br&gt;&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Nome: &lt;\/b&gt;'.$nome.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Telefone:&lt;\/b&gt; '.$telefone.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;E-Mail:&lt;\/b&gt; '.$email.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Deseja receber novidades:&lt;\/b&gt; '.$radio.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Data de envio:&lt;\/b&gt; '.$date.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Mensagem:&lt;\/b&gt;&lt;br&gt; '.$msg;\n    require(\"phpmailer\/src\/PHPMailer.php\");\n    require(\"phpmailer\/src\/SMTP.php\");\n    require (\"phpmailer\/src\/Exception.php\");\n\n$mail = new PHPMailer\\PHPMailer\\PHPMailer();\n    $mail-&gt;isSMTP(); \/\/ N\u00e3o modifique\n    $mail-&gt;Host       = '...';  \/\/ SEU HOST (HOSPEDAGEM)\n    $mail-&gt;SMTPAuth   = true;                        \/\/ Manter em true\n    $mail-&gt;Username   = 'email@seudominio.com.br';   \/\/SEU USU\u00c1RIO DE EMAIL\n    $mail-&gt;Password   = '0123456';                   \/\/SUA SENHA DO EMAIL SMTP password\n    $mail-&gt;SMTPSecure = 'ssl';    \/\/TLS OU SSL-VERIFICAR COM A HOSPEDAGEM\n    $mail-&gt;Port       = 465;     \/\/TCP PORT, VERIFICAR COM A HOSPEDAGEM\n    $mail-&gt;CharSet = 'UTF-8';    \/\/DEFINE O CHARSET UTILIZADO\n    \n    \/\/Recipients\n    $mail-&gt;setFrom('email@seudominio.com.br', 'Site');  \/\/DEVE SER O MESMO EMAIL DO USERNAME\n    $mail-&gt;addAddress('receptor@seudominio.com.br');     \/\/ QUAL EMAIL RECEBER\u00c1 A MENSAGEM!\n    \/\/ $mail-&gt;addAddress('ellen@example.com');    \/\/ VOC\u00ca pode incluir quantos receptores quiser\n    $mail-&gt;addReplyTo($email, $nome);  \/\/AQUI SERA O EMAIL PARA O QUAL SERA RESPONDIDO                  \n    \/\/ $mail-&gt;addCC('cc@example.com'); \/\/ADICIONANDO CC\n    \/\/ $mail-&gt;addBCC('bcc@example.com'); \/\/ADICIONANDO BCC\n\n    \/\/ Attachments\n    \/\/ $mail-&gt;addAttachment('\/var\/tmp\/file.tar.gz');         \/\/ Add attachments\n    \/\/ $mail-&gt;addAttachment('\/tmp\/image.jpg', 'new.jpg');    \/\/ Optional name\n\n    \/\/ Content\n    $mail-&gt;isHTML(true);                                  \/\/ Set email format to HTML\n    $mail-&gt;Subject = 'Mensagem do Formul\u00e1rio'; \/\/ASSUNTO\n    $mail-&gt;Body    = $mensagem;  \/\/CORPO DA MENSAGEM\n    $mail-&gt;AltBody = $mensagem;  \/\/CORPO DA MENSAGEM EM FORMA ALT\n\n    \/\/ $mail-&gt;send();\n    if(!$mail-&gt;Send()) {\n        echo \"&lt;script&gt;alert('Erro ao enviar o E-Mail');window.location.assign('index.php');&lt;\/script&gt;\";\n     }else{\n        echo \"&lt;script&gt;alert('E-Mail enviado com sucesso!');window.location.assign('index.php');&lt;\/script&gt;\";\n     }\n     die\n?&gt;<\/pre>\n\n\n\n<p>Observe que nas primeiras linhas, recuperamos as informa\u00e7\u00f5es obtidas atrav\u00e9s do $_POST, inserindo-as dentro de vari\u00e1veis. Posteriormente, j\u00e1 criamos a estrutura da nossa mensagem. Ap\u00f3s isso, iniciamos a nossa classe do PHP Mailer, que por ser encontrada atrav\u00e9s na <a href=\"https:\/\/github.com\/PHPMailer\/PHPMailer\" target=\"_blank\" rel=\"noopener noreferrer\">p\u00e1gina inicial do PHPMailer<\/a>. Observe que boa parte dos elementos foram comentados e mantidos apenas para fins de estudo. Fizemos isso pois n\u00e3o iremos utilizar nenhum desses recursos que est\u00e3o comentados.<\/p>\n\n\n\n<p>As informa\u00e7\u00f5es de Host, SMTP Secure e Port, voc\u00ea pode obter diretamente com sua <a href=\"https:\/\/www.homehost.com.br\" target=\"_blank\" rel=\"noopener noreferrer\">empresa de Hospedagem<\/a>. Ap\u00f3s isso, inclua seu e-mail de usu\u00e1rio da hospedagem e a senha.<\/p>\n\n\n\n<p>Por fim, criamos tamb\u00e9m um script, atrav\u00e9s do echo, que ser\u00e1 renderizado conforme a confirma\u00e7\u00e3o ou a falha do envio do e-mail.<br><a name=\"top17\"><\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Finalizando_nosso_formulario_HTML_com_envio_de_e-mail\"><\/span>Finalizando nosso formul\u00e1rio HTML com envio de e-mail<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Sendo assim, nossa classe j\u00e1 est\u00e1 devidamente configurada. Vamos agora inclu\u00ed-la no nosso formul\u00e1rio HTML.<\/p>\n\n\n\n<p>Portanto, agora o nosso c\u00f3digo <strong>form-exemplo-enviar-email.html<\/strong> ser\u00e1:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;!DOCTYPE html&gt;\n&lt;html lang=\"pt-br\"&gt;\n&lt;head&gt;\n    &lt;title&gt;Formul\u00e1rio HTML&lt;\/title&gt;\n    &lt;meta charset=\"utf-8\"\/&gt;\n    &lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"estilo.css\"&gt;\n&lt;\/head&gt;\n&lt;body&gt;\n    &lt;form action=\"enviar-email.php\" class=\"formulario\" method=\"post\"&gt; \n        &lt;p&gt; Envie uma mensagem preenchendo o formul\u00e1rio abaixo&lt;\/p&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"nome\"&gt;Seu Nome:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"nome\" name=\"nome\" placeholder=\"Digite seu nome*\" required&gt;\n        &lt;\/div&gt;\n        \n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"telefone\"&gt;Seu Telefone:&lt;\/label&gt;\n            &lt;input type=\"text\" id=\"telefone\" name=\"telefone\" placeholder=\"Digite seu Telefone\"&gt;\n        &lt;\/div&gt;\n\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"email\"&gt;Seu E-Mail:&lt;\/label&gt;\n            &lt;input type=\"email\" id=\"email\" name=\"email\" placeholder=\"Digite seu E-Mail*\" required&gt;\n        &lt;\/div&gt;        \n        &lt;div class=\"field radiobox\"&gt;\n            &lt;span&gt;Deseja receber nossas novidades?&lt;\/span&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"sim\" value=\"sim\" checked&gt;&lt;label for=\"sim\"&gt;Sim&lt;\/label&gt;\n            &lt;input type=\"radio\" name=\"novidades\" id=\"nao\" value=\"nao\"&gt;&lt;label for=\"nao\"&gt;N\u00e3o&lt;\/label&gt;\n        &lt;\/div&gt;\n        &lt;div class=\"field\"&gt;\n            &lt;label for=\"mensagem\"&gt;Sua mensagem:&lt;\/label&gt;\n            &lt;textarea name=\"mensagem\" id=\"mensagem\" placeholder=\"Mensagem*\" required&gt;&lt;\/textarea&gt;\n        &lt;\/div&gt;\n\n        &lt;input type=\"submit\" name=\"acao\" value=\"Enviar\"&gt;\n    &lt;\/form&gt;\n\n&lt;\/body&gt;\n&lt;\/html&gt;<\/pre>\n\n\n\n<p>Agora, o nosso arquivo <strong>enviar-email.php<\/strong> que ir\u00e1 receber e fazer o envio do formul\u00e1rio:<\/p>\n\n\n\n<pre class=\"wp-block-preformatted\">&lt;?php\n    \/\/ Criando nossas vari\u00e1veis para guardar as informa\u00e7\u00f5es do formul\u00e1rio\n    $nome=$_POST['nome'];\n    $telefone=$_POST['telefone'];\n    $email=$_POST['email'];\n    $radio=$_POST['novidades'];\n    $date=date(\"d\/m\/Y\");\n    $msg=$_POST['mensagem'];\n    \/\/ formatando nossa mensagem (que ser\u00e1 envaida ao e-mail)\n    $mensagem= 'Esta mensagem foi enviada atrav\u00e9s do formul\u00e1rio&lt;br&gt;&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Nome: &lt;\/b&gt;'.$nome.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Telefone:&lt;\/b&gt; '.$telefone.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;E-Mail:&lt;\/b&gt; '.$email.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Deseja receber novidades:&lt;\/b&gt; '.$radio.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Data de envio:&lt;\/b&gt; '.$date.'&lt;br&gt;';\n    $mensagem.='&lt;b&gt;Mensagem:&lt;\/b&gt;&lt;br&gt; '.$msg;\n    \/\/ abaixo as requisi\u00e7\u00f5es do arquivo phpmailer\n    require(\"phpmailer\/src\/PHPMailer.php\");\n    require(\"phpmailer\/src\/SMTP.php\");\n    require (\"phpmailer\/src\/Exception.php\");\n\n    \/\/ chamando a fun\u00e7\u00e3o do phpmailer\n\n$mail = new PHPMailer\\PHPMailer\\PHPMailer();\n    $mail-&gt;isSMTP(); \/\/ N\u00e3o modifique\n    $mail-&gt;Host       = 'mail.nomedoservidor.com';  \/\/ SEU HOST (HOSPEDAGEM)\n    $mail-&gt;SMTPAuth   = true;                        \/\/ Manter em true\n    $mail-&gt;Username   = 'email@seudominio.com.br';   \/\/SEU USU\u00c1RIO DE EMAIL\n    $mail-&gt;Password   = '0123456';                   \/\/SUA SENHA DO EMAIL SMTP password\n    $mail-&gt;SMTPSecure = 'ssl';    \/\/TLS OU SSL-VERIFICAR COM A HOSPEDAGEM\n    $mail-&gt;Port       = 465;     \/\/TCP PORT, VERIFICAR COM A HOSPEDAGEM\n    $mail-&gt;CharSet = 'UTF-8';    \/\/DEFINE O CHARSET UTILIZADO\n    \n    \/\/Recipients\n    $mail-&gt;setFrom('email@seudominio.com.br', 'Site');  \/\/DEVE SER O MESMO EMAIL DO USERNAME\n    $mail-&gt;addAddress('receptor@seudominio.com.br');     \/\/ QUAL EMAIL RECEBER\u00c1 A MENSAGEM!\n    \/\/ $mail-&gt;addAddress('ellen@example.com');    \/\/ VOC\u00ca pode incluir quantos receptores quiser\n    $mail-&gt;addReplyTo($email, $nome);  \/\/AQUI SERA O EMAIL PARA O QUAL SERA RESPONDIDO                  \n    \/\/ $mail-&gt;addCC('cc@example.com'); \/\/ADICIONANDO CC\n    \/\/ $mail-&gt;addBCC('bcc@example.com'); \/\/ADICIONANDO BCC\n\n    \/\/ Attachments\n    \/\/ $mail-&gt;addAttachment('\/var\/tmp\/file.tar.gz');         \/\/ Add attachments\n    \/\/ $mail-&gt;addAttachment('\/tmp\/image.jpg', 'new.jpg');    \/\/ Optional name\n\n    \/\/ Content\n    $mail-&gt;isHTML(true);                                  \/\/ Set email format to HTML\n    $mail-&gt;Subject = 'Mensagem do Formul\u00e1rio'; \/\/ASSUNTO\n    $mail-&gt;Body    = $mensagem;  \/\/CORPO DA MENSAGEM\n    $mail-&gt;AltBody = $mensagem;  \/\/CORPO DA MENSAGEM EM FORMA ALT\n\n    \/\/ $mail-&gt;send();\n    if(!$mail-&gt;Send()) {\n        echo \"&lt;script&gt;alert('Erro ao enviar o E-Mail');window.location.assign('index.php');&lt;\/script&gt;\";\n     }else{\n        echo \"&lt;script&gt;alert('E-Mail enviado com sucesso!');window.location.assign('index.php');&lt;\/script&gt;\";\n     }\n     die\n?&gt;\n\n<\/pre>\n\n\n\n<p><strong>Nota: no c\u00f3digo PHP \u00e9 necess\u00e1rio ajustar alguns dados, como o seu <a href=\"https:\/\/www.homehost.com.br\/blog\/contas-de-email\/porta-smtp-imap-e-pop3-configuracoes-de-email\/\" target=\"_blank\" rel=\"noopener noreferrer\">servidor SMTP<\/a>, login, senha, etc.<\/strong><\/p>\n\n\n\n<p>Dessa forma, finalmente conclu\u00edmos o nosso formul\u00e1rio HTML. Portanto, nosso formul\u00e1rio HTML ir\u00e1 receber os dados do usu\u00e1rio, enviar os dados para o servidor atrav\u00e9s do m\u00e9todo POST e, com o PHP, iremos gerir esses dados. Posteriormente, com a classe do PHPMailer, esses dados s\u00e3o enviadas de forma estruturada para nosso endere\u00e7o de e-mail. Por fim, o navegador recebe uma resposta do servidor, e com isso renderizar\u00e1 um script final, informando se a mensagem foi enviada corretamente ou se houve falha. Tudo isso feito atrav\u00e9s de poucas linhas de c\u00f3digo e de forma r\u00e1pida, pr\u00e1tica e f\u00e1cil!<\/p>\n\n\n\n<p>Voc\u00ea pode <a href=\"https:\/\/github.com\/homehost\/formulario-html-php\/archive\/master.zip\" target=\"_blank\" rel=\"noopener noreferrer\">fazer aqui o download<\/a> dos exemplos dos c\u00f3digos deste artigo.<\/p>\n\n\n\n<p>Temos a certeza que com a leitura de todo esse artigo, e ainda com estudo e pr\u00e1tica dos exemplos apresentados, voc\u00ea ser\u00e1 capaz de criar qualquer tipo de formul\u00e1rio HTML.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>O uso de formul\u00e1rio HTML (ou HTML form) \u00e9 muito frequente na web, \u00e9 um dos principais pontos de intera\u00e7\u00e3o entre usu\u00e1rios e uma aplica\u00e7\u00e3o web. Geralmente, eles funcionam enviando os dados para um servidor, por\u00e9m tamb\u00e9m podem ser utilizados para alguma fun\u00e7\u00e3o na pr\u00f3pria p\u00e1gina. Portanto, entender como utilizar um formul\u00e1rio HTML \u00e9 muito [&hellip;]<\/p>\n","protected":false},"author":18,"featured_media":3956,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_helpful_status":1,"_lmt_disableupdate":"","_lmt_disable":"","_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[3,4,229,20,6,164],"tags":[3417,2621,3306,21,202],"class_list":["post-3955","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-criar-sites","category-desenvolvedores","category-outros","category-php","category-tutoriais","category-wordpress-tutoriais","tag-form","tag-html","tag-html5","tag-php","tag-phpmailer"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.6 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost<\/title>\n<meta name=\"description\" content=\"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/\" \/>\n<meta property=\"og:locale\" content=\"pt_BR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost\" \/>\n<meta property=\"og:description\" content=\"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/\" \/>\n<meta property=\"og:site_name\" content=\"Homehost\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/Homehost\/\" \/>\n<meta property=\"article:published_time\" content=\"2019-08-03T21:24:16+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-26T12:04:20+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png\" \/>\n\t<meta property=\"og:image:width\" content=\"842\" \/>\n\t<meta property=\"og:image:height\" content=\"330\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Rafael Marques\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@Homehost\" \/>\n<meta name=\"twitter:site\" content=\"@Homehost\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Rafael Marques\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. tempo de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"32 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/\",\"name\":\"Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost\",\"isPartOf\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png\",\"datePublished\":\"2019-08-03T21:24:16+00:00\",\"dateModified\":\"2024-01-26T12:04:20+00:00\",\"author\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/a2154603d8bc4cfd0c3bda2c09c4017e\"},\"description\":\"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!\",\"breadcrumb\":{\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#breadcrumb\"},\"inLanguage\":\"pt-BR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-BR\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png\",\"contentUrl\":\"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png\",\"width\":842,\"height\":330,\"caption\":\"Formul\u00e1rio HTML\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"In\u00edcio\",\"item\":\"https:\/\/www.homehost.com.br\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Formul\u00e1rio HTML: criando forms HTML e enviando dados\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#website\",\"url\":\"https:\/\/www.homehost.com.br\/blog\/\",\"name\":\"Homehost\",\"description\":\"Hospedagem De Sites\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.homehost.com.br\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pt-BR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/a2154603d8bc4cfd0c3bda2c09c4017e\",\"name\":\"Rafael Marques\",\"description\":\"Especialista em Desenvolvimento Web e Marketing. \u00c9 apaixonado por tecnologia, empreendedorismo, audiovisual e animais. Em sua carreira, dedica-se ao empreendedorismo, al\u00e9m de atuar como Desenvolvedor Fullstack e redator t\u00e9cnico. Gosta de usar seu tempo livre para assistir a filmes, jogar, escrever, e passar um bom tempo brincando e mimando seus animais de estima\u00e7\u00e3o. Contato: rafael.blog@homehost.com.br\",\"sameAs\":[\"https:\/\/www.instagram.com\/rafamarquesrmb\/\",\"https:\/\/www.linkedin.com\/in\/rafamarquesrmb\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost","description":"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/","og_locale":"pt_BR","og_type":"article","og_title":"Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost","og_description":"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!","og_url":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/","og_site_name":"Homehost","article_publisher":"https:\/\/www.facebook.com\/Homehost\/","article_published_time":"2019-08-03T21:24:16+00:00","article_modified_time":"2024-01-26T12:04:20+00:00","og_image":[{"width":842,"height":330,"url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png","type":"image\/png"}],"author":"Rafael Marques","twitter_card":"summary_large_image","twitter_creator":"@Homehost","twitter_site":"@Homehost","twitter_misc":{"Escrito por":"Rafael Marques","Est. tempo de leitura":"32 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/","url":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/","name":"Formul\u00e1rio HTML: criando forms HTML e enviando dados | Homehost","isPartOf":{"@id":"https:\/\/www.homehost.com.br\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage"},"image":{"@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage"},"thumbnailUrl":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png","datePublished":"2019-08-03T21:24:16+00:00","dateModified":"2024-01-26T12:04:20+00:00","author":{"@id":"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/a2154603d8bc4cfd0c3bda2c09c4017e"},"description":"Formul\u00e1rio HTML: Aprenda tudo sobre os formul\u00e1rios no HTML, assim como receber seus dados com PHP e envia-los por e-mail com o PHP Mailer!","breadcrumb":{"@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#breadcrumb"},"inLanguage":"pt-BR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/"]}]},{"@type":"ImageObject","inLanguage":"pt-BR","@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#primaryimage","url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png","contentUrl":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png","width":842,"height":330,"caption":"Formul\u00e1rio HTML"},{"@type":"BreadcrumbList","@id":"https:\/\/www.homehost.com.br\/blog\/tutoriais\/formulario-html\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"In\u00edcio","item":"https:\/\/www.homehost.com.br\/blog\/"},{"@type":"ListItem","position":2,"name":"Formul\u00e1rio HTML: criando forms HTML e enviando dados"}]},{"@type":"WebSite","@id":"https:\/\/www.homehost.com.br\/blog\/#website","url":"https:\/\/www.homehost.com.br\/blog\/","name":"Homehost","description":"Hospedagem De Sites","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.homehost.com.br\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pt-BR"},{"@type":"Person","@id":"https:\/\/www.homehost.com.br\/blog\/#\/schema\/person\/a2154603d8bc4cfd0c3bda2c09c4017e","name":"Rafael Marques","description":"Especialista em Desenvolvimento Web e Marketing. \u00c9 apaixonado por tecnologia, empreendedorismo, audiovisual e animais. Em sua carreira, dedica-se ao empreendedorismo, al\u00e9m de atuar como Desenvolvedor Fullstack e redator t\u00e9cnico. Gosta de usar seu tempo livre para assistir a filmes, jogar, escrever, e passar um bom tempo brincando e mimando seus animais de estima\u00e7\u00e3o. Contato: rafael.blog@homehost.com.br","sameAs":["https:\/\/www.instagram.com\/rafamarquesrmb\/","https:\/\/www.linkedin.com\/in\/rafamarquesrmb\/"]}]}},"modified_by":"ad_hmhst","jetpack_featured_media_url":"https:\/\/www.homehost.com.br\/blog\/wp-content\/uploads\/2019\/08\/formularios_html.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/3955","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/users\/18"}],"replies":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/comments?post=3955"}],"version-history":[{"count":35,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/3955\/revisions"}],"predecessor-version":[{"id":13508,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/posts\/3955\/revisions\/13508"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/media\/3956"}],"wp:attachment":[{"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/media?parent=3955"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/categories?post=3955"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.homehost.com.br\/blog\/wp-json\/wp\/v2\/tags?post=3955"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}