Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]PHPMailer - dwa przebiegi?
Forum PHP.pl > Forum > Przedszkole
esos
Korzystam z biblioteki PHPMailer.
Widoczny w kodzie poniżej include, to kawałek kodu dodający do bazy log z informacjami co kiedy do kogo zostało wysłane.
Dawno nie pracowałem z php i nie rozumiem, dlaczego include wykonuje mi się dwa razy, tj. wpis do logu jest zawsze zdublowany.

Jakieś sugestie?

  1. try {
  2. $mail = new PHPMailer();
  3.  
  4. $mail->isSMTP();
  5. $mail->SMTPDebug = SMTP::DEBUG_SERVER;
  6.  
  7. $mail->Host = $mail_host;
  8. $mail->Port = 465;
  9. //$mail->Port = 587;
  10. $mail->SMTPSecure = PHPMailer::ENCRYPTION_SMTPS;
  11. $mail->SMTPAuth = true;
  12.  
  13. $mail->SMTPDebug = 2;
  14.  
  15. $mail->Username = $mail_user; // Podaj swój login gmail
  16. $mail->Password = $mail_pass; // Podaj swoje hasło do aplikacji
  17.  
  18. $mail->CharSet = 'UTF-8';
  19. $mail->setFrom('XXX', $nadawca);
  20. //$mail->setFrom('XXX', 'XXXX');
  21. $mail->addAddress($email);
  22. $mail->addReplyTo('XXX', $zwroc_do);
  23. //$mail->addReplyTo('XXX', 'XXX');
  24.  
  25. $mail->isHTML(true);
  26. $mail->Subject = $title;
  27. $mail->Body = $text_mail;
  28.  
  29. if(!$mail->send())
  30. {
  31. error_log('Mailer Error: ' . $mail->ErrorInfo);
  32. $answer = $mail->ErrorInfo;
  33. }
  34. else
  35. {
  36. $answer = 'wysłane';
  37. }
  38.  
  39. include('XXXX.php');
  40. }
  41.  
  42. catch(Exception $e)
  43. {
  44. echo "Błąd wysyłania maila :( : {$mail->ErrorInfo}";
  45. };
Tomplus
A jak wygląda sama wysyłka?
Bo może jest coś w stylu:

if ($phpmailer->send($text_mail, $title, $email) == true) {
$phpmailer->send($text_mail, $title, $email);
}

Salvation
Widocznie kod, z jakiegoś powodu, wykonuje się 2x. Zaprzęgnij xdebuga i prześledź Request od początku do wysyłki.
esos
Dziękuję za nakierowanie. smile.gif
A oto i winowajca:

  1. // Wykonanie zapytania
  2. $stmt->execute();
  3.  
  4. if ($stmt->execute()) {
  5. //echo "New record created successfully";
  6. } else {
  7. echo "Error: " . $sql . "<br>" . $conn->error;
  8. }
Tomplus
Widzisz, błąd w miejscu którego nam nie pokazałeś.
esos
Cytat(Tomplus @ 21.07.2024, 12:40:13 ) *
Widzisz, błąd w miejscu którego nam nie pokazałeś.


"wcześniej ten kawałek zawsze działał poprawnie" haha.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.