Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Wysyłanie emaila z załącznikiem .jpg z adresu url
grywalny
post
Post #1





Grupa: Zarejestrowani
Postów: 37
Pomógł: 0
Dołączył: 20.07.2011

Ostrzeżenie: (0%)
-----


  1. $files = array('http://www.aviationnews.eu/blog/wp-content/uploads/2009/04/boeing-p-8a-poseidon-successfully-completes-1st-flight.jpg'); //jakis tam plik z neta
  2. $to = "lala@op.pl";
  3. $from = "lala@tiri.pl";
  4. $subject ="blah blah";
  5. $message = "My message";
  6. $headers = "From: $from";
  7.  
  8.  
  9. $semi_rand = md5(time());
  10. $mime_boundary = "==Multipart_Boundary_x{$semi_rand}x";
  11.  
  12.  
  13. $headers .= "\nMIME-Version: 1.0\n" . "Content-Type: multipart/mixed;\n" . " boundary=\"{$mime_boundary}\"";
  14.  
  15.  
  16. $message = "This is a multi-part message in MIME format.\n\n" . "--{$mime_boundary}\n" . "Content-Type: text/plain; charset=\"iso-8859-1\"\n" . "Content-Transfer-Encoding: 7bit\n\n" . $message . "\n\n";
  17. $message .= "--{$mime_boundary}\n";
  18.  
  19.  
  20. for($i=0;$i<count($files);$i++){
  21. $file = fopen($files[$i],"rb");
  22. $data = fread($file,filesize($files[$i]));
  23. fclose($file);
  24. $data = chunk_split(base64_encode($data));
  25. $message .= "Content-Type: {\"application/octet-stream\"};\n" . " name=\"$files[$i]\"\n" .
  26. "Content-Disposition: attachment;\n" . " filename=\"photo_[$i].jpg\"\n" .
  27. "Content-Transfer-Encoding: base64\n\n" . $data . "\n\n";
  28. $message .= "--{$mime_boundary}\n";
  29. }
  30.  
  31. // send
  32.  
  33. $ok = @mail($to, $subject, $message, $headers);
  34. if ($ok) {
  35. echo "<p>mail sent to $to!</p>";
  36. } else {
  37. echo "<p>mail could not be sent!</p>";
  38. }


Ten piekny kod dziala jak marzenie kiedy pliki znajduja sie na moim serwerze. Tablice $files moge wypelnic sciezkami do plikow i sa wysylane jako zalacznik w emailu.

Niestety kiedy zmienie sciezke pliku na adres url do pliku tak jak w obecnym kodzie ktory wkleilem, dostaje taki oto blad:

"Warning: filesize(): stat failed for http://www.aviationnews.eu/blog/wp-content...-1st-flight.jpg in mojplik.php on line 69 Warning: fread(): Length parameter must be greater than 0 in mojplik.php on line 69 "

Czemu kod nie chce odczytac pliku? Przeciez to nie jest plik z mojego komputera, on juz jest gdzies zawieszony w internecie. Jest na jakims tam serwerze.

Jak zrobic zeby czytalo pliki z adresu url?questionmark.gif
Go to the top of the page
+Quote Post
alexandrus
post
Post #2





Grupa: Zarejestrowani
Postów: 7
Pomógł: 2
Dołączył: 29.11.2009

Ostrzeżenie: (0%)
-----


Funkcja filesize nie działa z http, najlepiej zrobisz ściągając ten plik do jakiegoś tymczasowego pliku i czytając z niego wszystko co ci potrzeba.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 21.08.2025 - 02:50