Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Wysyłanie maili z załącznikiem
Forum PHP.pl > Forum > PHP
felixk
Witam, próbuję napisać kod, który będzie wysyłał maila z załącznikiem dołączanym z jednej i tej samej lokalizacji. Problem w tym, że mail dociera, ale bez załącznika. Jakieś pomysły czemu tak jest?

  1. File for Attachment
  2. $f_name="/home/..../public_html/test/backup_db/".$letter; // use relative path OR ELSE big headaches. $letter is my file for attaching.
  3. $handle=fopen($f_name, 'rb');
  4. $f_contents=fread($handle, filesize($f_name));
  5. $a = var_dump($handle); echo $a; exit;
  6. $f_contents=chunk_split(base64_encode($f_contents)); //Encode The Data For Transition using base64_encode();
  7. $f_type=filetype($f_name);
  8. fclose($handle);
  9. # To Email Address
  10. $emailaddress="test@test.pl";
  11. # Message Subject
  12. $emailsubject="Automatyczna kopia bazy danych";
  13.  
  14. # Common Headers
  15. $headers .= 'From: Administracja <tpdoka@neptun.os.pl>'.$eol;
  16. $headers .= 'Reply-To: Administracja <tpdoka@neptun.os.pl>'.$eol;
  17. $headers .= 'Return-Path: Administracja <tpdoka@neptun.os.pl>'.$eol; // these two to set reply address
  18. $headers .= "Message-ID:<".$now." TheSystem@".$_SERVER['SERVER_NAME'].">".$eol;
  19. $headers .= "X-Mailer: PHP v".phpversion().$eol; // These two to help avoid spam-filters
  20. # Boundry for marking the split & Multitype Headers
  21. $mime_boundary=md5(time());
  22. $headers .= 'MIME-Version: 1.0'.$eol;
  23. $headers .= "Content-Type: multipart/related; boundary=\"".$mime_boundary."\"".$eol;
  24. $msg = "";
  25.  
  26. # Attachment
  27. $msg = "W dniu $data nastąpiło utworzenie kopii bazy danych. Proszę o zachowanie załącznika."; // finish with two eol's for better security. see Injection.
  28.  
  29. mail($emailaddress, $emailsubject, $msg, $headers);
trzczy
Upewnij się, czy plik jest wskazany prawidłowo. Wstaw to po 2. linii:
i zobacz, czy zwraca pozytyw.
felixk
Cytat(trzczy @ 2.12.2017, 12:37:08 ) *
Upewnij się, czy plik jest wskazany prawidłowo. Wstaw to po 2. linii:
i zobacz, czy zwraca pozytyw.

Zwraca pozytyw a i tak nie ma załącznika
bool(true) resource(3) of type (stream)
trzczy
Porównuję twe rozwiązaniei z tym postem http://php.net/manual/en/ref.mail.php#61644 Czemu nie masz w $msg tego Content- itd.?
felixk
Cytat(trzczy @ 2.12.2017, 13:01:09 ) *
Porównuję twe rozwiązaniei z tym postem http://php.net/manual/en/ref.mail.php#61644 Czemu nie masz w $msg tego Content- itd.?


Bo przychodziły te Content jako treść maila. Temat do zamknięcia, wykorzystałem PHPMailera i działa
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.