Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP][HTML]formularz z załącznikiem, formularz przechodzi bez załącznika
macwoz
post 19.02.2009, 18:15:14
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Witam. Proszę fachowców o pomoc w związku z formularzem na mojej stronie www.spd-shevchenko.com Ze względu na niewielką ilość przesyłanych do mnie ankiet nie zależy mi na tworzeniu profesjonalnej bazy danych. Wystarczy otrzymanie czytelnego maila i z tym akurat problemów nie mam po wklejeniu skryptu php z http://www.kurshtml.boo.pl . Mój problem polega na tym, że do mojej ankiety musi być załączona fotografia kandydata. Mimo kierowania się wskazówkami z kursu popełniam jakiś błąd, gdyż na pocztę otrzymuję czytelny formularz, jednak gdzieś "przepada" załącznik.
Początek kodu :
Cytat
<?php if (count($_POST))
{
////////// USTAWIENIA //////////
$email = [email=""]'info@spd-shevchenko.com'[/email]; // Adres e-mail adresata
$subject = 'ankieta personalna'; // Temat listu
$message = 'Dziękujemy za przesłanie formularza. Informacje zostały prawidłowo dodane do naszej bazy danych.'; // Komunikat
$error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
$charset = 'iso-8859-2'; // Strona kodowa
//////////////////////////////
$head =
"MIME-Version: 1.0\r\n" .
"Content-Type: text/plain; charset=$charset\r\n" .
"Content-Transfer-Encoding: 8bit";
$body = '';
foreach ($_POST as $name => $value)
if (!empty($value))
$body .= "$name=" . (get_magic_quotes_gpc() ? stripslashes($value) : $value) . "\r\n";
echo mail($email, "=?$charset?B?" . base64_encode($subject) . "?=", $body, $head) ? $message : $error;
}
else
{
?>
<form action="?" method="post"
enctype="multipart/form-data">



Następnie idą pola formularza i koniec kodu :

Cytat


WSTAW FOTOGRAFIĘ &nbsp; &nbsp; &nbsp; <input name="FOTO"
type="file"></small><br>
<br>
&nbsp;<input name="ok"
value="WYSLIJ" size="30" type="submit">
&nbsp; &nbsp; &nbsp; &nbsp; <input
value="WYCZYŚĆ FORMULARZ" type="reset">&nbsp; </div>
</form>
<?php }
?>


Proszę o info, czy w tej formie jest możliwe abym otrzymał ankietę na maila, a plik jako załącznik do maila, czy to w ogóle nie tędy droga. Z góry dziękuję.
Go to the top of the page
+Quote Post
erix
post 19.02.2009, 20:03:40
Post #2





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Mój problem polega na tym, że do mojej ankiety musi być załączona fotografia kandydata. Mimo kierowania się wskazówkami z kursu popełniam jakiś błąd, gdyż na pocztę otrzymuję czytelny formularz, jednak gdzieś "przepada" załącznik.

phpMailer, wszystko pójdzie dużo prościej i bezboleśnie.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
macwoz
post 19.02.2009, 20:35:44
Post #3





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Dzięki, ale żebym jeszcze wiedział, czym to się je ( i nie jest mi głupio, gdyż jestem w dziale przedszkole ), czy na prawdę nie ma sposobu zmodernizowania kodu w taki sposób, abym nie musiał korzystać z dodatkowego oprogramowania, wszystko mi funkcjonuje, tylko plik nie przechodzi, może w złym miejscu umieściłem enctype="multipart/form-data">
Go to the top of the page
+Quote Post
erix
post 19.02.2009, 21:30:51
Post #4





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Jest sposób, ale to wymagania dopisania pewnej ilości kodu.

Wiedz, że manual, to nie tylko stricte opis funkcji, ale również komentarze użytkowników. Znajdziesz tam wiele przydatnych rzeczy, jak np. rozwiązanie Twojego problemu: http://pl.php.net/manual/en/function.mail.php#69129

Ale tak, czy tak - użycie phpMailera byłoby tu IMHO pewniejesze i łatwiejsze.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
Misio311
post 19.02.2009, 21:42:23
Post #5





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 15.08.2006
Skąd: ZmC

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


Kolego, ja w tym skrypcie nie widzę odebrania oraz kodowania załącznika smile.gif Więc co ma niby przesłać ?

Tutaj temacik z rozwiązaniem Twojego problemu -- >> http://forum.php.pl/index.php?s=&showt...st&p=554403

Pozdrawiam serdecznie

Ten post edytował Misio311 19.02.2009, 21:48:10
Go to the top of the page
+Quote Post
macwoz
post 19.02.2009, 22:11:26
Post #6





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Dzięki erix, ale za info, w którym miejscu mam dopisać ten fragment kodu oddał bym pół królestwa i rękę księżniczki.

Dzięki misio311, tylko prosząc o odrobinę szacunku dla mojej niewiedzy, napisz jeszcze, który fragment postu w tamtym temacie rozwiązuje mój problem, jestem uparty i będę siedział jeszcze 3 dni jak trzeba, ale może dla Ciebie to jest moment, aby mi wskazać fragment kodu i określić miejsce, gdzie go wkleić, żeby załącznik doszedł na maila, gdyż z tego co piszesz, to dla Ciebie rozwiązanie problemu jest banalne, a ja raczkuję.
Go to the top of the page
+Quote Post
matixrr
post 19.02.2009, 22:18:07
Post #7





Grupa: Zarejestrowani
Postów: 207
Pomógł: 44
Dołączył: 14.04.2007

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


  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. ?>

Ostatni post z linku podanego przez Misio311...


--------------------
Pomogłem? Zmotywuj mnie do dalszej pracy i kliknij magiczny przycisk:

Go to the top of the page
+Quote Post
macwoz
post 19.02.2009, 22:22:46
Post #8





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


dzięki matixrr , proszę jeszcze tylko o info, w którym miejscu mam wkleić ten fragment kodu. Z góry dzięki i pozdr
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 12:46:46
Post #9





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Misio, niech Cię niebiosa błogosławią, albo co tam chcesz, podaj mi jeszcze tylko w przystępnym dla laika języku, w którym miejscu zrobić modyfikację. Z góry dzięki smile.gif
Go to the top of the page
+Quote Post
Misio311
post 20.02.2009, 12:58:59
Post #10





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 15.08.2006
Skąd: ZmC

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


Cytat(macwoz @ 20.02.2009, 12:46:46 ) *
Misio, niech Cię niebiosa błogosławią, albo co tam chcesz, podaj mi jeszcze tylko w przystępnym dla laika języku, w którym miejscu zrobić modyfikację. Z góry dzięki smile.gif


W którym miejscu zrobić modyfikację: Hmm w zasadzie to sam się pogubiłem w tamtym kawałku kodu,

Taka troszkę śmieszna definicja nagłówków

  1. <?php
  2. $head =
  3. "MIME-Version: 1.0r\n" .
  4. "Content-Type: text/plain; charset=$charsetr\n" .
  5. "Content-Transfer-Encoding: 8bit";
  6. ?>


Zamieniamy ją na:

  1. <?php
  2. $head = "From: \n"; // od kogo dostajemy maila
  3. $head .= "MIME-Version: 1.0\n";
  4. $head .= "Content-Type: multipart/mixed;\n";
  5. $head .= "\tboundary=\"___$znacznik==\""; // doklejamy ze mail z załącznikiem
  6. ?>


Następnie "ciało dokumentu" body"

Wyglądało tak"

  1. <?
  2. $body = '';
  3. ?>


A zmieniło się tak:

  1. <?
  2. // Treść listu
  3. $tresclistu .="Content-Type: text/plain; charset=\"iso-8859-2\"\n";
  4. $tresclistu .="Content-Transfer-Encoding: 8bit\n";
  5. $tresclistu .="\n";
  6.  
  7. // Załącznik
  8. $nazwa_tymczasowa = $_FILES["plik1"]["tmp_name"];
  9. $nazwa_pliku = $_FILES["plik1"]["name"];
  10.  
  11. if (is_uploaded_file($nazwa_tymczasowa))
  12. {
  13. $tresclistu .="--___$znacznik==\n";
  14. $tresclistu .="Content-Type: image/jpg\n";
  15. $tresclistu .="Content-Disposition: attachment;\n";
  16. $tresclistu .=" filename=\"$nazwa_pliku\"\n";
  17. $tresclistu .="Content-Transfer-Encoding: base64\n\n";
  18. $f = fopen($nazwa_tymczasowa, "rb");
  19. $dane = fread($f,filesize($nazwa_tymczasowa));
  20. fclose($f);
  21. $tresclistu .= chunk_split(base64_encode($dane));
  22. $tresclistu .="--___$znacznik==--\n";
  23. }
  24. ?>


A wysyłanie maila jak widać zmieniło się całkowicie ...

Ten post edytował Misio311 20.02.2009, 15:06:46
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 13:37:46
Post #11





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Misio, ja Ci się nie wypłacę, mam nadzieję, że dobrze rozumiem, część skryptu, którą mi podałeś zaczynającą się od <?php mam wstawić w miejsce gdzie u mnie zaczyna się <?php if (count($_POST)) , i zamienić całą zawartość do znacznika ?>
( przed <form action="?" ............ ), a w miejsce mojego <form action="?" itd., wstawić Twoje
<FORM NAME="zalacznik" METHOD="post" ACTION="#" ENCTYPE="multipart/form-data">
<INPUT type="file" name="plik1">
<INPUT TYPE="SUBMIT" VALUE="Wyślij" name="ok">
potem leci mój formularz w html-u i kończę:
WSTAW FOTOGRAFIĘ &nbsp; &nbsp; &nbsp; <input name="FOTO"
type="file"></small><br>
<br>
<input name="ok"
value="WYSLIJ" size="30" type="submit">
<input
value="WYCZYŚĆ FORMULARZ" type="reset">&nbsp; </div>
</form>
<?php }
?>

Czy o to chodzi, czy dalej coś kiełbaszę? smile.gif
Go to the top of the page
+Quote Post
Misio311
post 20.02.2009, 15:05:38
Post #12





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 15.08.2006
Skąd: ZmC

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


To jest gotowy skrypt wraz z formularzem

  1. <FORM NAME="zalacznik" METHOD="post" ACTION="#" ENCTYPE="multipart/form-data">
  2. WSTAW FOTOGRAFIĘ<br>
  3. <INPUT type="file" name="plik1"><br>
  4. <INPUT TYPE="SUBMIT" VALUE="Wyślij" name="ok">
  5. </FORM>
  6. <?php
  7. if ($_POST["ok"])
  8. {
  9. srand((double)microtime()*10000000);
  10. $znacznik = md5(uniqid(rand()));
  11.  
  12. ////////// USTAWIENIA //////////
  13. $odbiorca = 'info@spd-shevchenko.com'; // Adres e-mail adresata
  14. $tytul = 'Ankieta personalna'; // Temat listu
  15. $message = 'Dziękujemy za przesłanie formularza. Informacje zostały prawidłowo dodane do naszej bazy danych.'; // Komunikat
  16. $error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
  17. //////////////////////////////
  18.  
  19. // Nagłówki
  20. $naglowki = "From: \n";
  21. $naglowki .= "MIME-Version: 1.0\n";
  22. $naglowki .= "Content-Type: multipart/mixed;\n";
  23. $naglowki .= "\tboundary=\"___$znacznik==\"";
  24.  
  25. // Treść listu
  26. $tresclistu .="Content-Type: text/plain; charset=\"iso-8859-2\"\n";
  27. $tresclistu .="Content-Transfer-Encoding: 8bit\n";
  28. $tresclistu .="\n";
  29.  
  30. // Załącznik
  31. $nazwa_tymczasowa = $_FILES["plik1"]["tmp_name"];
  32. $nazwa_pliku = $_FILES["plik1"]["name"];
  33.  
  34. if (is_uploaded_file($nazwa_tymczasowa))
  35. {
  36. $tresclistu .="--___$znacznik==\n";
  37. $tresclistu .="Content-Type: image/jpg\n";
  38. $tresclistu .="Content-Disposition: attachment;\n";
  39. $tresclistu .=" filename=\"$nazwa_pliku\"\n";
  40. $tresclistu .="Content-Transfer-Encoding: base64\n\n";
  41. $f = fopen($nazwa_tymczasowa, "rb");
  42. $dane = fread($f,filesize($nazwa_tymczasowa));
  43. fclose($f);
  44. $tresclistu .= chunk_split(base64_encode($dane));
  45. }
  46. // wysłanie listu
  47. if (mail($odbiorca,$tytul,$tresclistu,$naglowki))
  48. {
  49. print "".$message."";
  50. }
  51. else
  52. {
  53. print "".$error."";
  54. }
  55. }
  56. ?>


Ten post edytował Misio311 20.02.2009, 15:07:57
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 16:55:25
Post #13





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Misio - jesteś wielki, śliczne dzięki, ja mam stronę zrobioną w NVU 1.0 , i na podglądzie nic nie widzę, ale po wrzuceniu na serwer wszystko działa
http://www.spd-shevchenko.com/formularz2.php a ponieważ musi to wyglądać tak jak na http://www.spd-shevchenko.com/pracownik33.php z załącznikiem w ostatniej części formularza, przed przyciskami wyślij i resetuj to ostatnie mam nadzieję pytanie. Czy w tym Twoim skrypcie mogę teraz w części form dopisać w html-u pozostałe pola formularza bez ingerencji w kod php, czy tu już się zaczyna inna bajka. Z góry dzięki - plusa już wstawiłem. smile.gif

Ten post edytował macwoz 20.02.2009, 17:00:19
Go to the top of the page
+Quote Post
Misio311
post 20.02.2009, 17:02:41
Post #14





Grupa: Zarejestrowani
Postów: 21
Pomógł: 2
Dołączył: 15.08.2006
Skąd: ZmC

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


Cytat(macwoz @ 20.02.2009, 16:55:25 ) *
Czy w tym Twoim skrypcie mogę teraz w części form dopisać w html-u pozostałe pola formularza bez ingerencji w kod php, czy tu już się zaczyna inna bajka. Z góry dzięki - plusa już wstawiłem. smile.gif


Oczywiście możesz dodać inne pola smile.gif Bez ingerenci w kod php.

Domyślam się że wszystkie dane z formularza na stronie -- >> http://www.spd-shevchenko.com/pracownik33.php

mają być wysłane na maila wraz z załącznikiem ?

Jeśli tak to:

Formularz:

plik zapisz jako formularz-zgloszenia.php

  1. <FORM NAME="zalacznik" METHOD="post" ACTION="wyslij.php" ENCTYPE="multipart/form-data">
  2. <TABLE border="0" cellspacing="10" align="center">
  3. <tr>
  4. <td height="30" valign="center" width="200">
  5. <small>NAZWISKO</small>
  6. </td>
  7. <td height="30" valign="center" width="300">
  8. <input maxlength="50" size="50" name="nazwisko">
  9. <td>
  10. </tr>
  11. <tr>
  12. <td height="30" valign="center" width="200">
  13. <small>IMIĘ</small>
  14. </td>
  15. <td height="30" valign="center" width="300">
  16. <input maxlength="50" size="50" name="imie">
  17. <td>
  18. </tr>
  19. <tr>
  20. <td height="30" valign="center" width="200">
  21. <small>ROK URODZENIA</small>
  22. </td>
  23. <td height="30" valign="center" width="300">
  24. <input maxlength="4" size="10" name="rok">
  25. <td>
  26. </tr>
  27. <tr>
  28. <td height="30" valign="center" width="200">
  29. <small>MIEJSCOWOŚĆ</small>
  30. </td>
  31. <td height="30" valign="center" width="300">
  32. <input maxlength="50" size="50" name="miasto">
  33. <td>
  34. </tr>
  35. <tr>
  36. <td height="30" valign="center" width="200">
  37. <small>REGION</small>
  38. </td>
  39. <td height="30" valign="center" width="300">
  40. <input maxlength="50" size="50" name="region">
  41. <td>
  42. </tr>
  43. <tr>
  44. <td height="30" valign="center" width="200">
  45. <small>KRAJ</small>
  46. </td>
  47. <td height="30" valign="center" width="300">
  48. <input maxlength="30" size="30" name="kraj">
  49. <td>
  50. </tr>
  51. <tr>
  52. <td height="30" valign="center" width="200">
  53. <small>WYKSZTAŁCENIE</small>
  54. </td>
  55. <td height="30" valign="center" width="300">
  56. <input maxlength="50" size="50" name="wyksztalcenie">
  57. <td>
  58. </tr>
  59. <tr>
  60. <td height="30" valign="center" width="200">
  61. <small>DOŚWIADCZENIE ZAWODOWE</small>
  62. </td>
  63. <td height="30" valign="center" width="300">
  64. <textarea cols="40" rows="3" name="doswiadczenie"></textarea>
  65. <td>
  66. </tr>
  67. <tr>
  68. <td height="30" valign="center" width="200">
  69. <small>RODZAJ POSZUKIWANEJ PRACY</small>
  70. </td>
  71. <td height="30" valign="center" width="300">
  72. <textarea cols="40" rows="2" name="rodzajpracy"></textarea>
  73. <td>
  74. </tr>
  75.  
  76. <tr>
  77. <td height="30" valign="top" width="200">
  78. <small><br>OCZEKIWANE WYNAGRODZENIE</small>
  79. </td>
  80. <td height="40" valign="center" width="300">
  81. <input maxlength="15" size="15" name="wynagrodzenie">
  82. <td>
  83. </tr>
  84.  
  85. <tr>
  86. <td height="40" valign="center" width="200">
  87. <small>WALUTA</small>
  88. </td>
  89. <td height="40" valign="center" width="300">
  90. <input maxlength="10" size="10" name="waluta">
  91. <td>
  92. </tr>
  93.  
  94. <tr>
  95. <td height="40" valign="center" width="200">
  96. <small>NUMERY TELEFONU</small>
  97. </td>
  98. <td height="40" valign="center" width="300">
  99. <input maxlength="50" size="50" name="telefon">
  100. <td>
  101. </tr>
  102.  
  103. <tr>
  104. <td height="40" valign="center" width="200">
  105. <small>ADRES E-MAIL</small>
  106. </td>
  107. <td height="40" valign="center" width="300">
  108. <input maxlength="50" size="50" name="email">
  109. <td>
  110. </tr>
  111.  
  112. <tr>
  113. <td height="40" valign="center" width="200">
  114. <small>DODATKOWE INFORMACJE LUB PYTANIA</small>
  115. </td>
  116. <td height="40" valign="center" width="300">
  117. <textarea cols="40" rows="2" name="pytania"></textarea>
  118. <td>
  119. </tr>
  120.  
  121.  
  122. WSTAW FOTOGRAFIĘ<br>
  123. <INPUT type="file" name="plik1"><br>
  124. <INPUT TYPE="SUBMIT" VALUE="Wyslij" name="ok">
  125.  
  126. </FORM>



Skrypcik:

Zapisz go jako plik wyslij.php

  1. <?php
  2.  
  3. $ok = $_POST['ok'];
  4.  
  5. if (!$ok)  {
  6. include"formularz-zgloszenia.php";
  7. }
  8. elseif($ok)
  9. {
  10.  
  11. // Odbieramy dane z formularza
  12.  
  13. $nazwisko = $_POST['nazwisko'];
  14. $imie = $_POST['imie'];
  15. $rok = $_POST['rok'];
  16. $miasto = $_POST['miasto'];
  17. $region = $_POST['region'];
  18. $kraj = $_POST['kraj'];
  19. $wyksztalcenie = $_POST['wyksztalcenie'];
  20. $doswiadczenie = $_POST['doswiadczenie'];
  21. $rodzajpracy = $_POST['rodzajpracy'];
  22. $wynagrodzenie = $_POST['wynagrodzenie'];
  23. $waluta = $_POST['waluta'];
  24. $telefon = $_POST['telefon'];
  25. $email = $_POST['email'];
  26. $pytania = $_POST['pytania'];
  27.  
  28.  
  29. srand((double)microtime()*10000000);
  30. $znacznik = md5(uniqid(rand()));
  31.  
  32. ////////// USTAWIENIA //////////
  33. $odbiorca = 'info@spd-shevchenko.com'; // Adres e-mail adresata
  34. $tytul = 'Ankieta personalna'; // Temat listu
  35. $message = 'Dziękujemy za przesłanie formularza. Informacje zostały prawidłowo dodane do naszej bazy danych.'; // Komunikat
  36. $error = 'Wystąpił błąd podczas wysyłania formularza'; // Komunikat błędu
  37. $zformularza = "
  38. Nazwisko: $nazwisko
  39. Imię: $imie
  40. Data urodzenia: $rok
  41. Miasto: $miasto
  42. Region: $region
  43. Kraj: $kraj
  44. Wykształcenie: $wyksztalcenie
  45. Doświadczenie: $doswiadczenie
  46. Rodzaj pracy: $rodzajpracy
  47. Wynagrodzenie: $wynagrodzenie
  48. Waluta: $waluta
  49. Telefon: $telefon
  50. E-mail: $email
  51. Pytania: $pytania";
  52. //////////////////////////////
  53.  
  54. // Nagłówki
  55. $naglowki = "From: \n";
  56. $naglowki .= "MIME-Version: 1.0\n";
  57. $naglowki .= "Content-Type: multipart/mixed;\n";
  58. $naglowki .= "\tboundary=\"___$znacznik==\"";
  59.  
  60.  
  61. // Treść listu
  62. $tresclistu="--___$znacznik==\n";
  63. $tresclistu .="Content-Type: text/plain; charset=\"iso-8859-2\"\n";
  64. $tresclistu .="Content-Transfer-Encoding: 8bit\n";
  65. $tresclistu .="\n$zformularza\n";
  66.  
  67. // Załącznik
  68. $nazwa_tymczasowa = $_FILES["plik1"]["tmp_name"];
  69. $nazwa_pliku = $_FILES["plik1"]["name"];
  70.  
  71. if (is_uploaded_file($nazwa_tymczasowa))
  72. {
  73. $tresclistu .="--___$znacznik==\n";
  74. $tresclistu .="Content-Type: image/jpg\n";
  75. $tresclistu .="Content-Disposition: attachment;\n";
  76. $tresclistu .=" filename=\"$nazwa_pliku\"\n";
  77. $tresclistu .="Content-Transfer-Encoding: base64\n\n";
  78. $f = fopen($nazwa_tymczasowa, "rb");
  79. $dane = fread($f,filesize($nazwa_tymczasowa));
  80. fclose($f);
  81. $tresclistu .= chunk_split(base64_encode($dane));
  82. $tresclistu .="--___$znacznik==--\n";
  83. }
  84.  
  85. // wysłanie listu
  86. if (mail($odbiorca,$tytul,$tresclistu,$naglowki))
  87. {
  88. print "".$message."";
  89. }
  90. else
  91. {
  92. print "".$error."";
  93. }
  94. }
  95. ?>



P.s w polo "name" w formularzu używaj małych liter i nie używaj spacji.
-----
Dzięki za plusik

Pozdrawiam ślicznie

Ten post edytował Misio311 20.02.2009, 18:10:55
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 18:51:57
Post #15





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


No właśnie kombinowałem pół godziny smile.gif i tym razem przechodził mi tylko załącznik bez treści formularza. Rozumiem, że muszę na serwer wrzucić te dwa pliki w nazewnictwie, które mi podałeś. Zaraz zobaczę, czy w NVU potrafię utworzyć nowy dokument tylko ze skryptem ( chodzi o plik wyślij.php ).
Otwiera mi się nowy dokument w NVU - w której sekcji mam wstawić skrypt by zapisać plik wyślij.php w body ?

Ten post edytował macwoz 20.02.2009, 18:56:54
Go to the top of the page
+Quote Post
erix
post 20.02.2009, 19:10:40
Post #16





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Otwiera mi się nowy dokument w NVU - w której sekcji mam wstawić skrypt by zapisać plik wyślij.php w body ?

Drogi Kolego, otwórz NOTATNIKIEM, a nie NVU.

Proszę, przeczytaj co nieco o podstawach PHP, bo nigdy się nie dogadamy.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 19:24:13
Post #17





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Dzięki erix, ale ja postuję w dziale PRZEDSZKOLE, i z całym szacunkiem spodziewam się sporo wyrozumiałości dla mej niewiedzy. Tematem zajmuję się 2 tygodnie więc cudów proszę nie wymagać, zacząłem od html-a i nawet udało mi się zrobić stronę, która ponoć nie jest najgorsza, teraz przyszła kolej na php i liczę na wsparcie i zapewniam, że nie szukam tu łatwizny, gdyż dzięki tym postom, które dostałem przez ostatnie 2 dni jestem coraz "mądrzejszy".
Go to the top of the page
+Quote Post
erix
post 20.02.2009, 19:54:19
Post #18





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
ale ja postuję w dziale PRZEDSZKOLE

Ale to nie zwalnia od samodzielności... Po analizie Twoich postów napisanych w tym temacie podejrzewam, że albo oczekujesz gotowca, albo zacząłeś od zadania pytania na forum zamiast rozeznania, z czym się je PHP:
Cytat
Misio - jesteś wielki, śliczne dzięki, ja mam stronę zrobioną w NVU 1.0 , i na podglądzie nic nie widzę, ale po wrzuceniu na serwer wszystko działa


Cytat
spodziewam się sporo wyrozumiałości dla mej niewiedzy

Owszem, wszak: nie jest wstydem czegoś nie wiedzieć, wstydem jest tą niewiedzę utrzymywać. Ale aby coś zbudować, musisz mieć budulec.

Kodu PHP w edytorze WYSIWYG nigdy nie ujrzysz. Efektów również, gdyż otwierając stronę w podglądzie PHP nie przetworzy Twojego kodu. No chyba, że jest opcja mapowania URL, ale nigdy nie używałem NVU, to mi ciężko powiedzieć. winksmiley.jpg


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post
macwoz
post 20.02.2009, 22:02:47
Post #19





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 19.02.2009
Skąd: Ukraina

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


Dzięki Misio ( i 2 słowa do erixa ) już wszystko chula, poradziłem sobie trochę inaczej, na bazie tego co mi przysłałeś, zrobiłem dwa pliki na jednym szblonie nazywając je zgodnie z Twoimi wskazówkami, mimo że erix doradzał mi zrobienie tego w notatniku, jednak wtedy komunikat o poprawnie przesłanym formularzu wyświetlał się na pustej stronie i wyglądało to nie najlepiej. Teraz grafika się nie zmienia, a komunikat wyskakuje w miejscu, gdzie był formularz z zachowaniem szablonu strony. A propos tego co mi pisze erix, to nie czekam na gotowce, i choć to co zrobiłem z tymi plikami dla Was odkrywcze na pewno nie jest, to jednak doszedłem do tego sam, więc myślenie mnie nie boli. Zawsze jestem otwarty na konstruktywną kryrtykę i zapewniam, że uczyć będę się pilnie, aktualnie zaczynam wałkować dreamveawer/a cs3 więc dalej Wam będę zawracał gitarę. Dziękuję za pomoc, ten temat załatwiony.
"najpierw nas ignorują, potem się z nas śmieją, następnie zaczynają z nami walczyć, a na koniec zwyciężamy" ( Gandi )

Pozdrawiam wszystkich smile.gif
Go to the top of the page
+Quote Post
mackooo
post 17.02.2015, 01:10:11
Post #20





Grupa: Zarejestrowani
Postów: 3
Pomógł: 0
Dołączył: 17.02.2015

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


a jak zmodyfikować ten kod, żeby można było przesłać np 2 lub 3 pliki smile.gif
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 Wersja Lo-Fi Aktualny czas: 24.04.2024 - 18:35