klasss Posted February 3, 2014 at 04:57 PM Report #543713 Posted February 3, 2014 at 04:57 PM Estou com dificuldade em enviar atraves do sendmail.exe É a primeira vez que estou a usar isto. e queria ver se alguem me podia explicar/ensinar a trabalhar com ele. tenho um formulario que recebe varias datas. E eu quero que quando faltam 10 dias para terminar ele envie um email. Codigo <? include(conectar.php); $conn = @mysql_connect($local_serve,$usuario_serve,$senha_serve,$banco_de_dados) or die ("O servidor não responde!"); // conecta-se ao banco de dados $db = @mysql_select_db($banco_de_dados,$conn) or die ("Não foi possivel ligar-se a Base de Dados!"); $validade = ("SELECT Nome, AlvaraValidade, AcidenteValidade, SeguroValidade, FinancasValidade, SocialValidade, RemuneracaoValidade, InstaladorValidade, MontadorValidade, MedicaValidade, ProjectistaValidade, GasValidade, RedesValidade, SoldadorValidade, MecanicoValidade, ClasSoldadorValidade, MaquinaValidade1, MaquinaValidade2, MaquinaValidade3, MaquinaTopoValidade FROM tb_eqipamentos, tb_detalhe_trabalhador, tb_trabalhador"); $validade = mysql_query($sql); while($item = mysql_fetch_assoc($validade)){ $mail_from = 'mail@mail.pt '; $mail_to = 'mail.mail@mail.pt'; $subject = 'teste'; $mensagem = 'mensagem' sendMail($item,$mail_from,$mail_to,$subject,$mensagem); if($sendmail == true){echo "sucesso";} else {echo"Fail";} ?> edit: para já o meu trabalho so funciona localhost(Wamp)
I-NOZex Posted February 3, 2014 at 07:57 PM Report #543749 Posted February 3, 2014 at 07:57 PM http://www.zenddeveloper.com/how-to-send-emails-from-localhost-apachephp-server/ B2R » Beat2Revolution v3.0b | Regista e divulga-nos beat2revolution.net
klasss Posted February 4, 2014 at 11:51 AM Author Report #543876 Posted February 4, 2014 at 11:51 AM Eu configurei tudo e quando vou testar no Browser ele mostra-me apenas a pagina em branco. Como posso saber se esta a haver algum problema?
I-NOZex Posted February 4, 2014 at 12:57 PM Report #543889 Posted February 4, 2014 at 12:57 PM (edited) secalhar devias saber que nao existe nenhum metedo com o nome sendMail é apenas mail... e nem sequer tens ai qqr variavel com o nome $sendMail... Edited February 4, 2014 at 12:58 PM by I-NOZex B2R » Beat2Revolution v3.0b | Regista e divulga-nos beat2revolution.net
klasss Posted February 4, 2014 at 02:07 PM Author Report #543899 Posted February 4, 2014 at 02:07 PM <?php $local_serve = "127.0.0.1"; // local do servidor $usuario_serve = "root"; // nome do usuario $senha_serve = ""; // senha $banco_de_dados = "GCD"; // nome do banco de dados $conn = mysql_connect($local_serve,$usuario_serve,$senha_serve,$banco_de_dados) or die ("O servidor não responde!"); //conecta-se ao banco de dados $db = mysql_select_db($banco_de_dados,$conn) or die ("Não foi possivel ligar-se a Base de Dados!"); $sql = ("SELECT Nome, AlvaraValidade, AcidenteValidade, SeguroValidade, FinancasValidade, SocialValidade, RemuneracaoValidade, InstaladorValidade, MontadorValidade, MedicaValidade, ProjectistaValidade, GasValidade, RedesValidade, SoldadorValidade, MecanicoValidade, ClasSoldadorValidade, MaquinaValidade1, MaquinaValidade2, MaquinaValidade3, MaquinaTopoValidade FROM tb_eqipamentos, tb_detalhe_trabalhador, tb_trabalhador"); $validade = mysql_query($sql); while($item = mysql_fetch_assoc($validade)){ $to = 'mail@mail.pt'; $subject = 'Testing sendmail.exe'; $message = 'Hi, you just received an email using sendmail!'; $headers = 'From: mail@imail.pt' . "\r\n" . 'Reply-To: mail@mail.pt' . "\r\n" . 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=iso-8859-1' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if($item($to, $subject, $message, $headers)) echo "Email sent"; else echo "Email sending failed"; } ?>
klasss Posted February 5, 2014 at 10:40 AM Author Report #544023 Posted February 5, 2014 at 10:40 AM <?php $to = 'joaomail@mail.pt'; $subject = 'Testing sendmail.exe'; $message = 'Hi, you just received an email using sendmail!'; $headers = 'From: mail@mail.pt' . "\r\n" . 'Reply-To: mail@mail.pt' . "\r\n" . 'MIME-Version: 1.0' . "\r\n" . 'Content-type: text/html; charset=iso-8859-1' . "\r\n" . 'X-Mailer: PHP/' . phpversion(); if(mail($to, $subject, $message, $headers)); echo "Email sent"; //} ?> já que estava com problemas simplifiquei o codigo para experimentar. Agora o problema que tenho é: aparece a mensagem Email Sent e não recebo nada
luciomorais Posted February 5, 2014 at 11:19 AM Report #544033 Posted February 5, 2014 at 11:19 AM já que estava com problemas simplifiquei o codigo para experimentar. Agora o problema que tenho é: aparece a mensagem Email Sent e não recebo nada Senão estou em erro teres o ";" depois do "if" não te vai assumir o "echo" como se fosse executado so depois de confirmar se o "if" é TRUE, nesse caso executa o "i"f e depois imprime "Email sent" quer o if seja TRUE ou FALSE
klasss Posted February 5, 2014 at 11:42 AM Author Report #544038 Posted February 5, 2014 at 11:42 AM mail($to, $subject, $message, $headers ) echo "Email sent"; //} ?> Assim? syntax error, unexpected 'echo' (T_ECHO) in
I-NOZex Posted February 5, 2014 at 11:42 AM Report #544039 Posted February 5, 2014 at 11:42 AM (edited) exacto, um ciclo if, apos a linha de condição acaba em: -chaveta e fecha com chaveta { } - dois pontos : e acaba com endif -ou simplesmente nada, quando apenas tem de executar uma linha... edit: hei!!! ninguem te mandou tirar o if!!! apenas tirar aquele ; que tinha no fim da condiçao... eu nao quero ser mauzinho, mas acho que devias de parar de fazer websites. nem que por um dia, e ler a documentaçao de php, porque pelos teus topicos, é tudo erro de logica, de perspicácia... Edited February 5, 2014 at 11:45 AM by I-NOZex B2R » Beat2Revolution v3.0b | Regista e divulga-nos beat2revolution.net
klasss Posted February 10, 2014 at 12:57 PM Author Report #544633 Posted February 10, 2014 at 12:57 PM Acabei por usar o phpmailer. Agora não estou a conseguir ir buscar as variaveis para colocar na mensagem do email. $PHPMailer->Body = '<p>Faltam 10 dias ou menos para terminar a data do Documento ".$Nome."</p>';
I-NOZex Posted February 10, 2014 at 01:01 PM Report #544634 Posted February 10, 2014 at 01:01 PM tenta assim: $PHPMailer->Body = "<p>Faltam 10 dias ou menos para terminar a data do Documento ".$Nome."</p>"; B2R » Beat2Revolution v3.0b | Regista e divulga-nos beat2revolution.net
klasss Posted February 10, 2014 at 02:08 PM Author Report #544636 Posted February 10, 2014 at 02:08 PM Eu devo ter algo mal. Tenho assim: $sql = ("SELECT Nome, AlvaraValidade, AcidenteValidade, SeguroValidade, FinancasValidade, SocialValidade, RemuneracaoValidade, InstaladorValidade, MontadorValidade, MedicaValidade, ProjectistaValidade, GasValidade, RedesValidade, SoldadorValidade, MecanicoValidade, ClasSoldadorValidade, MaquinaValidade1, MaquinaValidade2, MaquinaValidade3, MaquinaTopoValidade FROM tb_eqipamentos, tb_detalhe_trabalhador, tb_trabalhador WHERE datediff(now(), data) <= 10 ");$validade = mysql_query($sql); E na mensagem quero que ele me mostre o nome e as datas que estão a terminar
I-NOZex Posted February 10, 2014 at 02:17 PM Report #544637 Posted February 10, 2014 at 02:17 PM e o resto do codigo? B2R » Beat2Revolution v3.0b | Regista e divulga-nos beat2revolution.net
klasss Posted February 10, 2014 at 02:23 PM Author Report #544639 Posted February 10, 2014 at 02:23 PM $PHPMailer = new PHPMailer();// define que será usado SMTP $PHPMailer->IsSMTP(); // envia email HTML $PHPMailer->isHTML( true ); // codificação UTF-8, a codificação mais usada recentemente $PHPMailer->Charset = 'UTF-8'; // Configurações do SMTP $PHPMailer->SMTPAuth = False; $PHPMailer->SMTPSecure = 'none'; $PHPMailer->Host = '--------'; $PHPMailer->Port = '25'; $PHPMailer->Username = '----------'; $PHPMailer->Password = '-------'; // E-Mail do remetente (deve ser o mesmo de quem fez a autenticação // nesse caso seu_login@gmail.com) $PHPMailer->From = '---------------; // Nome do rementente $PHPMailer->FromName = '.....'; // assunto da mensagem $PHPMailer->Subject = '.......'; // corpo da mensagem $PHPMailer->Body = "<p>Faltam 10 dias ou menos para terminar a data do Documento ".$Nome."</p>"; // corpo da mensagem em modo texto $PHPMailer->AltBody = 'Mensagem em texto'; // adiciona destinatário (pode ser chamado inúmeras vezes) $PHPMailer->AddAddress( 'maiiil@mail.pt' ); // adiciona um anexo $PHPMailer->AddAttachment( '' ); // verifica se enviou corretamente if ( $PHPMailer->Send() ) { echo "Enviado com sucesso"; } else { echo 'Erro do PHPMailer: ' . $PHPMailer->ErrorInfo; } ?> Isso é o esta por baixo do codigo anterior
bioshock Posted February 10, 2014 at 03:49 PM Report #544657 Posted February 10, 2014 at 03:49 PM (edited) Habituem-se a usar mysqli. $db = new mysqli($host, $user, $pwd, $bd); $query = $db->prepare("SELECT id, nome FROM tabela WHERE datediff(now(), data) <= 10"); $query->execute(); $query->bind_result($id, $nome); $query->store_result(); while($query->fetch()){ // código PHPMailer $PHPMailer->Body = "<p>Faltam 10 dias ou menos para terminar a data do Documento " . $nome . "</p>"; } Edited February 10, 2014 at 03:50 PM by bioshock
klasss Posted February 10, 2014 at 05:11 PM Author Report #544678 Posted February 10, 2014 at 05:11 PM $query->bind_result($id, $nome); Os () são esses? ou são []? é que está a dar-me error function name must be a string
bioshock Posted February 10, 2014 at 05:30 PM Report #544688 Posted February 10, 2014 at 05:30 PM São. Está-te a dar erro nessa linha? Exemplo completo: http://stuffpinho.com/php-the-way-mysqli-works-part-3-queries/
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