nmoa Posted February 13, 2016 at 02:46 PM Report Share #593451 Posted February 13, 2016 at 02:46 PM boas tenho aqui uma questão: tirei este codigo da net e apliquei e gostaria de saber se isto faz algum sentido... ele está a enviar o email e inscrever na bd mas não como os dados do formulario a ideia é fazer uma validação com php e jquery obrigado <div id="form"> <h1>PREENCHE JÁ COM OS TEUS DADOS</h1> <?php if(isset($_POST['nome']) && isset($_POST['email']) && isset($_POST['localidade']) && isset($_POST['texto']) && isset($_POST['telefone'])){ /*function trataValor($valor){ $valor = trim($valor); $valor = strip_tags($valor); $valor = addslashes($valor); return $valor; }*/ // UTILIZANDO A FUNCAO //$nome = trataValor($_POST['nome']); $nome = $_POST['nome']; $email =$_POST['email']; $localidade = $_POST['localidade']; $texto = $_POST['texto']; $telefone = $_POST['telefone']; $periodo = $_POST['periodo']; $hora = $_POST['hora']; echo $nome; if(!empty($nome) && !empty($email) && !empty($texto) && !empty($localidade) && !empty($telefone) ){ if(preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$/i", $email)){ // ABAIXO PODE SER TROCADO PELO SEUS COMANDOS DO MYSQL $to = "geral@duitdesign.com"; $subject = "Landing page | Contacto web"; $headers = "MIME-Version: 1.1\r\n"; $headers .= "From: ".$email."\r\n"; $headers .= "Content-type: text/html; charset=iso-8859-1\r\n"; // menssagem $message ="<html>"; $message .="<head></head>"; $message .= "<body><div style=\" font-size: 12px; margin: 0; padding: 0;\"><br/> <table cellpadding=\"0\" cellspacing=\"0\" width=\"100%\" height=\"100%\" border=\"0\"> <tr> <td align=\"center\" valign=\"top\" style=\"padding: 20px 0 20px 0\"> <table bgcolor=\"FFFFFF\" cellspacing=\"0\" cellpadding=\"10\" border=\"0\" width=\"500\" style=\"border:1px solid #E0E0E0;\"> <tr> <td valign=\"top\"> <img src=\"http://www.saojoaohealthclub.net/imgs/lp_03.png\"/ ></td> </tr> <tr><td> Recebeu um contacto através do site. <br></td></tr><tr> <td> <strong style=\"font-size:14px\">Nome: </strong>".$nome." </td></tr> <tr> <td><strong style=\"font-size:14px\">Email: </strong>".$email."</td></tr> <tr> <td><strong style=\"font-size:14px\">telefone:</strong>".$telefone."</td></tr> <tr> <td> <strong style=\"font-size:14px\">localidade:</strong>".$localidade."</td></tr> <tr> <td> <strong style=\"font-size:14px\">Periodo para contato:</strong>".$periodo."</td></tr> <td> <strong style=\"font-size:14px\">Hora escolhida:</strong>".$hora."</td></tr> </table> </tr> </table> </div>"; $message .="</body>"; $message .="</html>"; $headers = "From: $email "; $semi_rand = md5(time()); $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x"; $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\""; $headers .="<style type='text/css'> body { background:#ccc;} </style>"; $message .= "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-Type:text/html; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $message . "\n\n"; mail($to, $subject, $message, $headers); require_once ("../connect.php"); connect(); $sql="INSERT INTO `registos`(`id_registos`, `nome`, `email`, `telefone`,`localidade`,`id_template`, `periodo`, `hora`,`data_registo`) VALUES (NULL,'".$nome."','".$mail."','".$telefone."','".$localidade."','".$teste."','".$periodo."','".$hora."', now());"; $result=mysql_query($sql); // ACIMA PODE SER TROCADO PELO SEUS COMANDOS DO MYSQL }else{ // IMPRIMIMOS O ERRO echo "Seu e-mail parece estar incorreto!"; } } else{ echo "Existem campos obrigatórios em branco"; } } else {}?> <form id="formulario" enctype="multipart/form-data" method="post" action="<?php $_SERVER['PHP_SELF'];?>" > <div id="seta"><img src="imgs/seta_07.png"></div> <br><input id="nome_id" placeholder="Nome" type="text" name="nome" /> <br> <input id="telefone_id" placeholder="Telefone" type="text" maxlength="9" name="telefone" /><br> <input type="text" id="email_id" placeholder="Email" name="email" id="email"/><br> <input type="text" id="localidade_id" placeholder="Localidade" name="localidade" /><br> <textarea name="texto" id="texto_id" placeholder="Quero esta campanha porque" ></textarea><br> <select name="periodo" id="periodo_id" > <option value="">Horário para contato</option> <option value="manha">Manhã</option> <option value="tarde">Tarde</option> <option value="noite">Noite</option> </select><br><br> <input type="text" id="hora_id" placeholder="Hora indicada" name="hora" size="10" > <div id="enviar"> <button name="enviar"><h1>clique já</h1><h2>e SAIBA TUDO!!</h2></button> </div> </form> </div> Link to comment Share on other sites More sharing options...
nmoa Posted February 14, 2016 at 12:05 AM Author Report Share #593471 Posted February 14, 2016 at 12:05 AM ja vi que é complexo... Link to comment Share on other sites More sharing options...
pedro43 Posted February 14, 2016 at 01:47 AM Report Share #593476 Posted February 14, 2016 at 01:47 AM não é nada complexo. repara no que estás a fazer: (`id_registos`, `nome`, `email`, `telefone`,` localidade`,`id_template`, `periodo`, `hora`,`data_registo`) VALUES ( NULL,'" .$nome."','".$mail."','".$telefone."','".$localidade."','".$teste."','".$periodo."','".$hora."', now());"; o que é a var $mail ? o que é a var $teste ? nao vais enviar o $texto? Link to comment Share on other sites More sharing options...
nmoa Posted February 14, 2016 at 09:48 AM Author Report Share #593478 Posted February 14, 2016 at 09:48 AM (edited) não é nada complexo. repara no que estás a fazer: (`id_registos`, `nome`, `email`, `telefone`,` localidade`,`id_template`, `periodo`, `hora`,`data_registo`) VALUES ( NULL,'" .$nome."','".$mail."','".$telefone."','".$localidade."','".$teste."','".$periodo."','".$hora."', now());"; o que é a var $mail ? o que é a var $teste ? nao vais enviar o $texto? de facto tinha um erro no sql, mas já corregi e mesmo assim não me está a inscrever na bd este codigo deveria chegar para inserir na bd, os dados de ligação à bd já foram chamados no inicio $sql="INSERT INTO `registos`(`id_registos`, `nome`, `texto`, `email`, `telefone`,`localidade`,`id_template`, `periodo`, `hora`,`data_registo`) VALUES (NULL,'".$nome."','".$texto."','".$email."','".$telefone."','".$localidade."','".$teste."','".$periodo."','".$hora."', NOW())"; $result=mysql_query($sql); Edited February 14, 2016 at 09:57 AM by nmoa Link to comment Share on other sites More sharing options...
pedro43 Posted February 14, 2016 at 09:54 PM Report Share #593514 Posted February 14, 2016 at 09:54 PM (edited) VALUES (NULL,'". como é que criaste a tabela? o que retorna $result? Edited February 14, 2016 at 09:55 PM by pedro43 Link to comment Share on other sites More sharing options...
nmoa Posted February 15, 2016 at 06:46 PM Author Report Share #593546 Posted February 15, 2016 at 06:46 PM VALUES (NULL,'". como é que criaste a tabela? o que retorna $result? não percebo a tua questão o result retorna os valores do registo vindo do formulario Link to comment Share on other sites More sharing options...
nmoa Posted February 16, 2016 at 03:33 PM Author Report Share #593579 Posted February 16, 2016 at 03:33 PM o problema esta no if if(isset($_POST['nome']) && isset($_POST['email']) && isset($_POST['localidade']) && isset($_POST['texto']) && isset($_POST['telefone'])){ está alguma coisa mal nesta parte ? se eu colocar o insert antes deste ponto ele consegue escrever na bd Link to comment Share on other sites More sharing options...
nmoa Posted February 16, 2016 at 05:47 PM Author Report Share #593589 Posted February 16, 2016 at 05:47 PM ja resolvi a questão, tive que alterar o código obrigado na mesma Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now