Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]masowe wysyłanie emaila, dodanie nadawcy
kidler
post
Post #1





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


Witam. Mam taki skrypt, który wysyła masowo emaile...
  1. <?php
  2. if (mysql_connect($sql_serwer, $sql_login, $sql_haslo)
  3. and mysql_select_db($sql_baza))
  4. {
  5. $wynik = mysql_query("SELECT mail FROM user");
  6. $rekordow = mysql_result(mysql_query("SELECT FOUND_ROWS()"),0);
  7. set_time_limit($rekordow*5);
  8. while($dane = mysql_fetch_array($wynik))
  9. {
  10. $mail = $dane["mail"];
  11. mail($mail,"tytul","tresc","nadawca@serwer.pl");
  12. echo "wyslano maila do: $mail<br />";
  13. }
  14. }
  15. else
  16. echo "Nie można połączyć się z bazą danych";
  17. ?>


Jak dodać dot ego skryptu nadawcę? By po otrzymaniu emaila nie wyświetlało "nieznany nadawca" tylko wpisany przeze mnie email (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
phpion
post
Post #2





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




Wystarczy dodać nagłówek "From". Więcej szczegółów znajdziesz w przykładach pod adresem:
http://pl2.php.net/manual/pl/function.mail.php
Go to the top of the page
+Quote Post
kidler
post
Post #3





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


TAK??
  1. <?php
  2. if (mysql_connect($sql_serwer, $sql_login, $sql_haslo)
  3. and mysql_select_db($sql_baza))
  4. {
  5. $wynik = mysql_query("SELECT mail FROM user");
  6. $rekordow = mysql_result(mysql_query("SELECT FOUND_ROWS()"),0);
  7. set_time_limit($rekordow*5);
  8. while($dane = mysql_fetch_array($wynik))
  9. {
  10. $mail = $dane["mail"];
  11. $headers = 'Fro: webmaster@example.com' . "r\n" .
  12.    'Reply-To: webmaster@example.com' . "r\n" .
  13.    'X-Mailer: PHP/' . phpversion();
  14. mail($mail,"tytul","tresc","nadawca@serwer.pl","$headers");
  15. echo "wyslano maila do: $mail<br />";
  16. }
  17. }
  18. else
  19. echo "Nie można połączyć się z bazą danych";
  20. ?>
Go to the top of the page
+Quote Post
WojtasSP320
post
Post #4





Grupa: Zarejestrowani
Postów: 87
Pomógł: 13
Dołączył: 13.08.2008
Skąd: Chełmno

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


No prawie, tylko że zrobiłeś literówkę
Kod
$headers = 'Fro:'
Go to the top of the page
+Quote Post
kidler
post
Post #5





Grupa: Zarejestrowani
Postów: 65
Pomógł: 0
Dołączył: 9.09.2006

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


dziwne, e-maile nie dochodzą...
Go to the top of the page
+Quote Post
WojtasSP320
post
Post #6





Grupa: Zarejestrowani
Postów: 87
Pomógł: 13
Dołączył: 13.08.2008
Skąd: Chełmno

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


Sprawdź kilka rzeczy:
1. Czy w ogóle funkcja mail działa na twoim serwerze (niektóre serwety wyłączają maila)
2. W temacie nie powinno być znaków łamania linii
3. Jeśli nie dochodzą to zamień znaki łamania linii w nagłówku tylko na \n
4. W przypadku każdej linii dłuższej niż 70 znaków powinieneś użyć funkcji wordwrap()

Zaczynaj z jak najprostszą składnią (np. wpisz wszystko na sztywno), a potem zmieniaj na formę pożądaną i zobacz w którym momencie się zawali.

Ten post edytował WojtasSP320 21.09.2008, 14:09:59
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 18:27