Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: puste maile
Forum PHP.pl > Forum > PHP
Amistat
czy może ktoś mi poprawić ten skrypt lub podesłać inny.
dochodzą do mie maile ale niestety puste...
  1. <?
  2. if ($_POST) {
  3. // w zmiennej $to zapisujemy adres gdzie formularz mialby byc wysylny
  4. $to = 'xxx@xxx.xx';
  5.  
  6. //przetwarzamy dane formularza i wysylamy na wczesniej definiowany adres mail
  7. $temat = 'Ankieta';
  8.  
  9. $body = '';
  10.  
  11. foreach ($_POST as $key => $value) {
  12.   $body .= $key . ': ' . $value . "\n";
  13. }
  14.  
  15. //kodowanie wiadomosci na polskie znaki
  16. $bodypl = iconv("UTF-8","ISO-8859-2",$body);
  17.  
  18. if(@mail($to, $temat, $bodypl))
  19. {
  20. // zaleznie od tego czy wyslanie maila powiodlo sie wysylamy odpowiednia odpowiedz
     do Flash
  21. echo "odpowiedz=WYSLANIE FORMULARZA POWIODLO SIE...&";
  22. } else {
  23. echo "odpowiedz=WYSTAPIL BLAD PODCZAS WYSYLANIA MAIL!!!&";
  24. }
  25. }
  26. ?>

chciałem go wykorzystać do innego formularza ale okazało sie że nie dział. Dochodzą maile ale niestety puste.
Dlaczego?

Czy może ktoś podesłać podobny skrypt.
nospor
1) " Problem" - co to za tytul?
2) brak bbcode
zamykam. prosze na PW mi podeslac poprawioną treśc uzupelnionoą o bbcode i poprawny tytul a odblokuje

edit:
co rozumiesz przez puste? bez wiadomości a temat jest?

iconv
Cytat
Zwraca skonwertowany łańcuch lub FALSE, jeśli konwersja się nie uda.
Moze w tym problem? Moze ci zwraca false. daj se echo $bodypl; i zobacz czy tam cos masz.

ps: przenosze na php
Amistat
tak temat jest, i na jednej stronie mi działa a na drugiej już nie z tym samym formularzem
LBO
usun @ z przed mail()... sproboj zdebugowac skrypt... wszedzie gdzie funkcje zwracaja false w razie bledy pododawaj if'y... wyecho()uj wszyskie stringi.. nepwno znajdziesz blad wtedy

edit:
temat to osobna zmienna $temat - niegdzie nie przetwarzana, dlatego zostala wyswietlona w mailu...to samo z emailem w zm. $to..
$bodypl.. tutaj pies pogrzebany... jestem pewien.. ze iconv dziala nie tak jak oczekujesz.. hmm, sprawdz w manualu, ale czytalem ze iconv nie jest dostepna na kilku platformach
Amistat
za zielony jestem, niestety sam sobie nie poradze...

usunołem @ i też nie działa

pfp forum

może to kogoś naprowadzi
LBO
zrob tak...
  1. <?
  2. if (isset($_POST)) {
  3. // w zmiennej $to zapisujemy adres gdzie formularz mialby byc wysylny
  4. $to = 'xxx@xxx.xx';
  5.  
  6. // przetwarzamy dane formularza i wysylamy na wczesniej definiowany adres mail
  7. $temat = 'Ankieta';
  8. $body = '';
  9.  
  10. foreach ($_POST as $key => $value) {
  11. $body .= $key . ': ' . $value . "\n";
  12. }
  13.  
  14. //kodowanie wiadomosci na polskie znaki
  15. $bodypl = iconv("UTF-8", "ISO-8859-2", $body);
  16. if (!$bodypl) {
  17. print("cos nie tak z iconv()... przerywanie dzialania skryptu\n");
  18. exit();
  19. } else {
  20. print('$bodypl to '.$bodypl);
  21. }
  22.  
  23. if(mail($to, $temat, $bodypl)) {
  24. echo "odpowiedz=WYSLANIE FORMULARZA POWIODLO SIE...&";
  25. } else {
  26. echo "odpowiedz=WYSTAPIL BLAD PODCZAS WYSYLANIA MAIL!!!&";
  27. }
  28. }
  29. ?>


napisz co sie wypisuje na stronie...
Amistat
cos nie tak z iconv() odpowiedz=WYSLANIE FORMULARZA POWIODLO SIE...&

ale i tak dochodzi tylko że puste nadal
LBO
no wlasnie.. funkcja iconv nie dziala... hmmm.. na flashzone.pl fajny skrypcik jest, konwertujacy kodowanie strongow.. jest uniwersalny (w obrebie kodowan ktore obslguje smile.gif)

chiwle poszukalem i prosze:
kodowanie polskich znaczkow, przrobienie tego to chwila (sam mam osobna klase)
Amistat
tylko ten mój formularz nie jest we flesh-u tylko w zwyczajnym html-u, o ile to ma jakieś znaczenie,
LBO
iconv dzilajac sprawnie zwraca dany string w docelowym kodowaniu... ale u ciebie nie dziala (czytaj kilka postow wczesniej) wiec zwraca false, nie STRING... dlatego $bodypl jest puste i dlatego masz puste cialo maila

adit:
a w jakim kodowaniu jest strona z formularzem?
Amistat
wielki dzięki za wszelką pomoc,
poradziłem sobie w inny sposób.
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.