Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie dochodzą załączniki z formularza
Forum PHP.pl > Forum > PHP
rafal005
Witam

Mam następujący problem w skrypcie PHP obsługującym formularz na stronie.

Gdy wypełnia się go poprzez domenę http://www.miss-licealistek.pl/ to wysyła się, ale załącznik nie dochodzi.

Gdy natomiast wejdę przez http://goraczka.home.pl/miss-licealistek/ to załącznik dochodzi.

Jak łatwo się domyśleć, ludzie na tą stronę będą wchodzić poprzez: http://www.miss-licealistek.pl/

Czy wie ktoś może o co chodzi? Czy jest to coś błahego, czego zapomniałem dać w kodzie? W razie potrzeby wkleję kod formularza.
pedro84
Cytat(rafal005 @ 17.05.2010, 16:38:14 ) *
czego zapomniałem dać w kodzie?

A skąd my mamy to wiedzieć skoro nie dałeś żadnego wycinka kodu?
kadet90
Ty to ja jestem czarodziejem że mam zgadywać kod ?
rafal005
Oto fragmenty kodu z pliku index.php i wyslij.php

  1. <FORM NAME="zalacznik" METHOD="post" ACTION="wyslij.php" ENCTYPE="multipart/form-data">
  2. <input type="hidden" name="wyslij" value="1" />
  3. <input type="hidden" name="MAX_FILE_SIZE" value="5000000" />
  4. <table border="0">
  5. <tr>
  6. <td width="190">Imię i nazwisko</td>
  7. <td width="350"><input type="text" name="imie" style="width: 350px"></td>
  8. </tr>
  9. <tr>
  10. <td>Wiek</td>
  11. <td><input type="text" name="wiek" style="width: 350px"></td>
  12. </tr>
  13. <tr>
  14. <td>Kolor oczu</td>
  15. <td><input type="text" name="oczy" style="width: 350px"></td>
  16. </tr>
  17. <tr>
  18. <td>Kolor wlosow</td>
  19. <td><input type="text" name="wlosy" style="width: 350px"></td>
  20. </tr>
  21. <tr>
  22. <td>Wzrost</td>
  23. <td><input type="text" name="wzrost" style="width: 350px"></td>
  24. </tr>
  25. <tr>
  26. <td>Szkoła</td>
  27. <td><input type="text" name="uczelnia" style="width: 350px"></td>
  28. </tr>
  29. <tr>
  30. <td>E-mail</td>
  31. <td><input type="text" name="email" style="width: 350px"></td>
  32. </tr>
  33. <tr>
  34. <td>Telefon</td>
  35. <td><input type="text" name="phone" style="width: 350px"></td>
  36. </tr>
  37. <tr>
  38. <td>Gadu</td>
  39. <td><input type="text" name="gadu" style="width: 350px"></td>
  40. </tr>
  41. <tr>
  42. <td>Zdjecie (max 5mb)</td>
  43. <td><INPUT type="file" name="plik1"></td>
  44. </tr>
  45. <tr>
  46. <td>Słówko o sobie</td>
  47. <td><textarea name="tresc" style="width: 350px; height: 100px"></textarea></td>
  48. </tr>
  49. <tr>
  50. <td>&nbsp;</td>
  51. <td><input type="SUBMIT" value="Wyślij zgłoszenie" /></td>
  52. </tr>
  53. </table>
  54. </FORM>


  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="x@xtravaganza.pl";
  10. $tytul="Zgłoszenie - Miss Licealistek WrocLove";
  11. $nadawca = "Kandydatka";
  12. $nadawca_mail="x@xtravaganza.pl";
  13.  
  14. // treœć listu
  15. $tresclistu = "Tresc wiadomosci:\nImie i nazwisko: $_POST[imie]\nWiek: $_POST[wiek]\nE-mail: $_POST[email]\nPhone: $_POST[phone]\nWlosy: $_POST[wlosy]\nOczy: $_POST[oczy]\nUczelnia: $_POST[uczelnia]\nGadu: $_POST[gadu]\n$_POST[tresc]";
  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=\"utf-8\"\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 "Dziękujemy za zgłoszenie się do Wyborów Miss Licealistek. Skontaktujemy się z Tobą mailowo lub telefonicznie w najbliższym czasie.";
  52. }
  53. else
  54. {
  55. print "Wystąpił BŁĄD. E-mail NIE został wysłany poprawnie.
  56. <br>Prosimy o <a href=\"java script:history.back();\">powrót</a> i wysłanie zgłoszenia ponownie.";
  57. }
  58. }
  59. ?>
nospor
Cytat
Gdy wypełnia się go poprzez domenę http://www.miss-licealistek.pl/ to wysyła się, ale załącznik nie dochodzi.

Gdy natomiast wejdę przez http://goraczka.home.pl/miss-licealistek/ to załącznik dochodzi.
Obie domeny wskazują na ten sam skrypt? na tym samym serwerze?


ps:
Zastosuj się proszę do podanych tu porad:
Temat: Jak poprawnie zada pytanie
a zobaczysz być może parę dodatkowych błędów, które pomogę Tobie/nam w rozwiązaniu tego problemu.
rafal005
Cytat(nospor @ 18.05.2010, 12:00:10 ) *
Obie domeny wskazują na ten sam skrypt? na tym samym serwerze?

A jak to sprawdzić? Obie domeny wskazują na ten sam katalog, na tym samym serwerze.

No czarodzieje dwaj pedro84 i kadet90, jak jest już kod to widzę, że teraz trochę trudniej Wam nabić kolejnego posta snitch.gif
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.