Witam.

Chcialem przerobic sprawdzony i dzialajacy formularz wysylajacy jeden zalacznik na maila:
  1. <?php
  2. //sprawdzenie czy załącznik pochodzi z formularza
  3. if ($_POST["wyslij"]==1)
  4. {
  5. srand((double)microtime()*1000000);
  6. $znacznik = md5(uniqid(rand()));
  7.  
  8. // dane o odbiorcy, nadawcy
  9. $odbiorca="nazwa-twojego-maila@domena.pl";
  10. $tytul="Mail z zalaczniekiem";
  11. $nadawca = "Mail ze strony";
  12. $nadawca_mail="mail-ze-strony@domena.pl";
  13.  
  14. // treść listu
  15. $tresclistu = "tutaj piszesz całą treść maila";
  16.  
  17. // definicja nagłówków
  18.  $naglowki  = "From: $nadawca <$nadawca_mail>\n";
  19.  $naglowki .= "MIME-Version: 1.0\n";
  20.  $naglowki .= "Content-Type: multipart/mixed;\n";
  21.  $naglowki .= "\tboundary=\"___$znacznik==\"";
  22.  
  23. // nagłówki listu
  24.  $tresc="--___$znacznik==\n";
  25.  $tresc .="Content-Type: text/plain; charset=\"iso-8859-2\"\n";
  26.  $tresc .="Content-Transfer-Encoding: 8bit\n";
  27.  $tresc .="\n$tresclistu\n";
  28.  
  29. // nagłówki i obsługa załącznika
  30.  $plik_nazwa_tmp = $_FILES["plik1"]["tmp_name"];
  31.  $plik_nazwa_oryginalna = $_FILES["plik1"]["name"];
  32.  $plik_wielkosc = $_FILES["plik1"]["size"];
  33.  
  34. if (is_uploaded_file($plik_nazwa_tmp))
  35.  {
  36.    $tresc .="--___$znacznik==\n";
  37.    $tresc .="Content-Type: image/gif\n";
  38.    $tresc .="Content-Disposition: attachment;\n";
  39.    $tresc .=" filename=\"$plik_nazwa_oryginalna\"\n";
  40.    $tresc .="Content-Transfer-Encoding: base64\n\n";
  41.    $f = fopen($plik_nazwa_tmp,"rb");
  42.    $dane = fread($f,filesize($plik_nazwa_tmp));
  43.    fclose($f);
  44.    $tresc .= chunk_split(base64_encode($dane));
  45.    $tresc .="--___$znacznik==--\n";
  46.  }
  47.  
  48. // wysłanie listu
  49.     if (mail($odbiorca,$tytul,$tresc,$naglowki))
  50.   {
  51.   print "E-mail z załącznikiem został wysłany poprawnie.";
  52.   }
  53.   else
  54.   {
  55.   print "E-mail NIE został wysłany poprawnie.
  56.   <br>Prosimy o <a href=\"java script:history.back();\">powrót</a> i wysłanie e-maila ponownie.";
  57.   }
  58. }
  59. ?>


na taki aby wysylal 2 zalaczniki, w tym celu zdublowalem i zmodyfikowalem te czesc:

  1. <?php
  2. // nagłówki i obsługa załącznika
  3.  $plik_nazwa_tmp = $_FILES["plik1"]["tmp_name"];
  4.  $plik_nazwa_oryginalna = $_FILES["plik1"]["name"];
  5.  $plik_wielkosc = $_FILES["plik1"]["size"];
  6.  
  7. if (is_uploaded_file($plik_nazwa_tmp))
  8.  {
  9.    $tresc .="--___$znacznik==\n";
  10.    $tresc .="Content-Type: image/gif\n";
  11.    $tresc .="Content-Disposition: attachment;\n";
  12.    $tresc .=" filename=\"$plik_nazwa_oryginalna\"\n";
  13.    $tresc .="Content-Transfer-Encoding: base64\n\n";
  14.    $f = fopen($plik_nazwa_tmp,"rb");
  15.    $dane = fread($f,filesize($plik_nazwa_tmp));
  16.    fclose($f);
  17.    $tresc .= chunk_split(base64_encode($dane));
  18.    $tresc .="--___$znacznik==--\n";
  19.  }
  20. ?>


na taka:
  1. <?php
  2. $plik_nazwa_tmp2 = $_FILES["plik2"]["tmp_name"];
  3.  $plik_nazwa_oryginalna2 = $_FILES["plik2"]["name"];
  4.  $plik_wielkosc2 = $_FILES["plik2"]["size"];
  5.  
  6.  
  7. if (is_uploaded_file($plik_nazwa_tmp2))
  8.  {
  9.    $tresc .="Content-Type: image/gif\n";
  10.    $tresc .="Content-Disposition: attachment;\n";
  11.    $tresc .=" filename=\"$plik_nazwa_oryginalna2\"\n";
  12.    $tresc .="Content-Transfer-Encoding: base64\n\n";
  13.    $f = fopen($plik_nazwa_tmp2,"rb");
  14.    $dane = fread($f,filesize($plik_nazwa_tmp2));
  15.    fclose($f);
  16.    $tresc .= chunk_split(base64_encode($dane));
  17.    $tresc .="--___$znacznik==--\n";
  18.  }
  19. ?>


niestety zaraza nadal odmawia wspolpracy wysylajac uporczywie tylko pierwszy zalacznik, a mi sie skonczyly pomysly oraz poziom wiedzy

Dla pelnej jasnosci zalaczam rowniez formularz
  1. <?php
  2. <FORM NAME="zalacznik" METHOD="post" ACTION="wyslij.php" ENCTYPE="multipart/form-data">
  3. <input type="hidden" name="wyslij" value="1" />
  4. <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
  5. <INPUT type="file" name="plik1">
  6. <INPUT type="file" name="plik2">
  7. <INPUT TYPE="SUBMIT" VALUE="Wyślij zalacznik">
  8. </FORM>
  9. ?>