Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kilka plikow przez jeden formularz
janusz_23
post
Post #1





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 4.08.2006

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


Czesc!
Jestem żółtodziobem i nie umiem sobie z czyms poradzic... chciałbym aby poprzez poniższy skrypt można było wysyłać kilka plików (zdjec jpeg) a nie jeden. Czy jest to mozliwe?? Caly czas probuje jakos go zmodyfikować wlasnymi siłami ale nie umiem.. Prosze o POMOC

Kod
<?php

@ $nazwa = $_POST['nazwa'];
@ $ulica = $_POST['ulica'];
@ $miejscowosc = $_POST['miejscowosc'];
@ $poczta = $_POST['poczta'];


//sprawdzenie czy załącznik pochodzi z formularza
if ($_POST["wyslij"]==1)
{
srand((double)microtime()*1000000);
$znacznik = md5(uniqid(rand()));

// dane o odbiorcy, nadawcy
$odbiorca="o..........";
$tytul="O...............";
$nadawca = "Mail ze strony";
$nadawca_mail="mail-ze-strony@domena.pl";

// treść listu
$tresclistu = " nazwa: $nazwa ulica: $ulica miejscowosc: $miejscowosc poczta: $poczta";

// definicja nagłówków
$naglowki = "From: $nadawca <$nadawca_mail>\n";
$naglowki .= "MIME-Version: 1.0\n";
$naglowki .= "Content-Type: multipart/mixed;\n";
$naglowki .= "\tboundary=\"___$znacznik==\"";

// nagłówki listu
$tresc="--___$znacznik==\n";
$tresc .="Content-Type: text/plain; charset=\"iso-8859-2\"\n";
$tresc .="Content-Transfer-Encoding: 8bit\n";
$tresc .="\n$tresclistu\n";

// nagłówki i obsługa załącznika
$plik_nazwa_tmp = $_FILES["plik1"]["tmp_name"];
$plik_nazwa_oryginalna = $_FILES["plik1"]["name"];
$plik_wielkosc = $_FILES["plik1"]["size"];

$plik_nazwa_tmp = $_FILES["plik2"]["tmp_name"];
$plik_nazwa_oryginalna = $_FILES["plik2"]["name"];
$plik_wielkosc = $_FILES["plik2"]["size"];



if (is_uploaded_file($plik_nazwa_tmp))
{
$tresc .="--___$znacznik==\n";
$tresc .="Content-Type: image/gif/\n";
$tresc .="Content-Disposition: attachment;\n";
$tresc .=" filename=\"$plik_nazwa_oryginalna\"\n";
$tresc .="Content-Transfer-Encoding: base64\n\n";
$f = fopen($plik_nazwa_tmp,"rb");
$dane = fread($f,filesize($plik_nazwa_tmp));
fclose($f);
$tresc .= chunk_split(base64_encode($dane));
$tresc .="--___$znacznik==--\n";
}


// wysłanie listu
if (mail($odbiorca,$tytul,$tresc,$naglowki))
{
print "E-mail z załącznikiem został wysłany poprawnie.";
}
else
{
print "E-mail NIE został wysłany poprawnie.
<br>Prosimy o <a href=\"java script:history.back();\">powrót</a> i wysłanie e-maila ponownie.";
}
}
?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
cadavre
post
Post #2





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


Nie możesz redefiniować zmiennych jak tutaj:
  1. <?php
  2. $plik_nazwa_tmp = $_FILES["plik1"]["tmp_name"];
  3. $plik_nazwa_oryginalna = $_FILES["plik1"]["name"];
  4. $plik_wielkosc = $_FILES["plik1"]["size"];
  5.  
  6. $plik_nazwa_tmp = $_FILES["plik2"]["tmp_name"];
  7. $plik_nazwa_oryginalna = $_FILES["plik2"]["name"];
  8. $plik_wielkosc = $_FILES["plik2"]["size"];
  9. ?>

Możesz dodać do drugich zmiennych jakiś suffix np. "_2".


--------------------
Silesian PHP User Group - www.spug.pl
Symfony2, OAuth2, budowanie API - masz pytania? Pisz!
Go to the top of the page
+Quote Post
janusz_23
post
Post #3





Grupa: Zarejestrowani
Postów: 6
Pomógł: 0
Dołączył: 4.08.2006

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


poprawilem, ale nadal nie dziala...
w pliku html mam:
  1. <input type="hidden" name="wyslij" value="1" />
  2. <input type="hidden" name="MAX_FILE_SIZE" value="2000000" />
  3. <INPUT type="file" name="plik1"><BR>
  4. <INPUT type="file" name="plik1_2"><BR><BR><BR>


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