Como faço um formulário em PHP (Planos Linux)?
Na hora de somar um formulário de contato no seu site, é fundamental que o mesmo evite vulnerabilidades que permitam a uma outra pessoa ter controle dos seus arquivos para gerar envios de SPAM ou hospedar conteúdo malicioso. Mostramos um exemplo sobre como deveria ser o seu formulário.
Se você vai criar um formulário em PHP, deverá carregar dois arquivos ao servidor para colocá-lo online: um que tenha o formulário exibido no seu site como você quiser e outro que gere a ação de levar a informação carregada no formulário pelos seus visitantes na sua caixa de entrada.
Formulário de contato
Faremos um arquivo html. No nosso exemplo se chamará contato.html.Generaremos un archivo html.
<head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title>CONTACTO</title> </head> <body> <td height="15"><div align="center"> <div align="center"> <FORM action="enviar.php" method="post" enctype="multipart/form-data" name="contacto" target="_top"> <table width="653" height="370" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="72" class="style7"><span class="style7">Nombre</span> </td> <td width="247" height="18" class="style7"><input name="Nombre" type="text" id="Nombre"></td> <td colspan="2" rowspan="2" class="style7"> </td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> </tr> <tr> <td class="style7">E-mail</td> <td class="style7"><input name="Email" type="text" id="Email"></td> <td colspan="2" valign="bottom" class="style7"><div align="left" class="style24"></div></td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> <td colspan="2" valign="middle" class="style7"><table width="387" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="24"> </td> <td width="100" class="style9"> </td> <td width="24" class="style9"> </td> <td width="102" class="style9"> </td> <td width="24" class="style9"> </td> <td width="113" class="style9"> </td> </tr> </table></td> </tr> <tr> <td class="style7">Teléfono</td> <td class="style7"><input name="Teléfono" type="text" id="Teléfono"></td> <td colspan="2" valign="bottom" class="style7"> </td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> <td colspan="2" valign="bottom" class="style7"><table width="387" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="24"> </td> <td width="100" class="style9"> </td> <td width="24" class="style9"> </td> <td width="102" class="style9"> </td> <td width="24" class="style9"> </td> <td width="113" class="style9"> </td> </tr> </table></td> </tr> <tr> <td class="style7">Dirección</td> <td class="style7"><input name="Dirección" type="text" id="Dirección"></td> <td colspan="2" valign="bottom" class="style7"> </td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> <td colspan="2" class="style7"><table width="387" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="24"> </td> <td width="100" class="style9"> </td> <td width="24" class="style9"> </td> <td width="102" class="style9"> </td> <td width="24" class="style9"> </td> <td width="113" class="style9"> </td> </tr> </table></td> </tr> <tr> <td class="style7">Localidad</td> <td class="style7"><input name="Localidad" type="text" id="Localidad"></td> <td colspan="2" class="style7"> </td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> <td width="181" rowspan="3" class="style7"><div align="center"></div> <div align="center"></div></td> <td width="186" rowspan="3" class="style7"> </td> </tr> <tr> <td class="style7">Provincia</td> <td class="style7"><input name="Provincia" type="text" id="Provincia"></td> </tr> <tr> <td class="style7"> </td> <td class="style7"> </td> </tr> <tr> <td class="style7"><div align="center">Comentarios</div> <div align="center"></div></td> <td class="style7"><textarea name="Comentarios" cols="35" rows="4" id="Comentarios"></textarea></td> <td width="181" class="style7"> </td> <td valign="bottom" class="style7"> </td> </tr> <tr> <td height="54"> </td> <td><span class="style7"> <input name="Enviar" type="submit" class="style24" id="Enviar" onClick="return Enviar(this.form)" value="Enviar Presupuesto"> </span></td> <td colspan="2"><div align="center"></div></td> </tr> </table> <table width="468" border="0" cellspacing="0" cellpadding="0"> <tr> <td width="249"> </td> <td width="219"><div align="center"></div></td> </tr> </table> <label><br> </label> </form> </div></td> </tr> <tr> <td height="15"> </td> </tr> <tr> <td height="30"> </td> </tr> </table> </td> </tr> <tr> <td height="65"> </td> </tr> </table> </td> </tr> </table> </div> </body> </html>
No navegador vai se ver assim:
Envio de dados
O segundo arquivo será um arquivo PHP. No nosso exemplo, se chamará enviar.php.
<? $MailToAddress = "CUENTA_DE_CORREO"; $MailSubject = "ASUNTO"; if (!$MailFromAddress) { $MailFromAddress = "CUENTA_DE_CORREO"; } $Header = "CONTACTO"; $Footer = ""; if (!is_array($HTTP_POST_VARS)) return; reset($HTTP_POST_VARS); while(list($key, $val) = each($HTTP_POST_VARS)) { $GLOBALS[$key] = $val; $val=stripslashes($val); $Message .= "$key = $val\n"; } if ($Header) { $Message = $Header."\n\n".$Message."\n\n"; } $Message .= "REMOTE HOST: ".$REMOTE_HOST."\n"; $Message .= "REMOTE USER: ". $REMOTE_USER."\n"; $Message .= "REMOTE ADDR: ". $REMOTE_ADDR."\n"; if ($Footer) { $Message .= "\n\n".$Footer; } mail( "$MailToAddress", "$MailSubject", "$Message", "From: $MailFromAddress"); header ("Location: http://DOMINIO/CONFIRMACION_DE_RECEPCION"); ?>
Vamos editá-lo!
Você deverá editá-lo para adicionar os dados correspondentes no seu site e contas de correio:
$MailToAddress = "CUENTA_DE_CORREO";
Aqui, você deverá alterar CONTA_DE_CORREIO pelo endereço de mail onde você deseja receber o conteúdo do formulário. Por exemplo: consultas@meusite.com.
$MailSubject = "ASUNTO";
Substitua ASSUNTO pelo assunto como chegarão todos os envios do seu formulário. Por exemplo, Nova consulta.
$MailFromAddress = "CUENTA_DE_CORREO";
Nesta linha troque CUENTA_DE_CORREIO pelo endereço de email que se utilizará como emissora dos correios gerados pelo formulário. Deve ser uma conta criada a partir do seu painel Ferozo. Por exemplo, feedback@meusite.com.
header ("Location: http://DOMINIO/CONFIRMACION_DE_RECEPCION");
Por último, troque http://DOMINIO/CONFIRMAÇAO_DE_RECEPÇAO pela URL da página onde você agradace aos seus visitantes por preencher o formulário. Por exemplo: http://meusite.com/formulario_enviado.php.