Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Wysyłanie maila do danych osób
kuba_pilach
post
Post #1





Grupa: Zarejestrowani
Postów: 224
Pomógł: 3
Dołączył: 24.12.2010

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


Witajcie!
A więc dam kawałek kody, by nie było:
  1. $zapytanieogrupe = mysql_query("select team from uzytkownik where login='$session'")
  2. $zog = mysql_fetch_assoc($zapytanieogrupe);
  3. if ($zog>0) {
  4. $zapytanieoszefow = mysql_query("select * from uzytkownik where team='".$zog['team']."' and team_rank='Admin'")
  5. $zs = mysql_num_rows($zapytanieoszefow);
  6. while($zos = mysql_fetch_assoc($zapytanieoszefow)) {
  7. $tab = $zos['email'];
  8. }
  9. $tablica = implode("; ",$tab);
  10. $subject = "czyli tytuł maila";
  11. $headers = "Return-Path: twoj@email.com\r\n";
  12. $headers .= "MIME-Version: 1.0 \r\n";
  13. $headers .= "Content-type: text/html; charset=utf-8 \r\n";
  14. $headers .= "From: twoj@email.com\r\n";
  15. $headers .= "Reply-To: twoj@email.com\r\n";
  16. $headers .= "X-Priority: 1\r\n";
  17. $headers .= "X-MSMail-Priority: High\r\n";
  18. $msg = "E-mail wyslany z witryny www.twoja-strona.pl<br><br><br>\n";
  19. $msg .= "Dalszy tekst<br><br>";
  20. mail($tablica, $subject, $msg, $headers);
  21. }

Na początku są przykładowe dane... A więc jak pewnie już wiecie robię sobie internetowy dzienniczek dla nauki...
I mam grupy ręcznie robione...
I za każdym razem jak się poprawi ocenę, strona ma wysyłać maila do Adminów grupy do której należy użytkownik...
I zapętla mi się strona :/
Niech ktoś poprawi by działało...
Dzięki z góry ;]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
desperat666
post
Post #2





Grupa: Zarejestrowani
Postów: 31
Pomógł: 12
Dołączył: 19.03.2011

Ostrzeżenie: (10%)
X----


może klamra z while nieco wczesniej zamknięta powinna być na przykład przed funkcją mail()?

  1. while($zos = mysql_fetch_assoc($zapytanieoszefow)) {
  2. $tablica = implode("; ",$zos['email']);
  3. }
  4.  
  5. $subject = "czyli tytuł maila";
  6. $headers = "Return-Path: twoj@email.com\r\n";
  7. $headers .= "MIME-Version: 1.0 \r\n";
  8. $headers .= "Content-type: text/html; charset=utf-8 \r\n";
  9. $headers .= "From: twoj@email.com\r\n";
  10. $headers .= "Reply-To: twoj@email.com\r\n";
  11. $headers .= "X-Priority: 1\r\n";
  12. $headers .= "X-MSMail-Priority: High\r\n";
  13. $msg = "E-mail wyslany z witryny www.twoja-strona.pl<br><br><br>\n";
  14. $msg .= "Dalszy tekst<br><br>";
  15. mail($tablica, $subject, $msg, $headers);
  16.  


Poza tym przeczytałem w manualu, że implode() używa się do łączenia stringów z tablicy, w jeden string, oddzielony jakimś wybranym stringiem
a ty chcesz wartość w tablicy która jest stringiem ($zos['email']) wstawić do funkcji która chce tablice stringów, może zadziała to tak:

  1. $tmp = Array();
  2. while($zos = mysql_fetch_assoc($zapytanieoszefow)) {
  3. array_push($tmp, $zos['email']);
  4. }
  5. $tablica = implode("; ",$tmp);
  6.  


i nie wiem czy można oddzielać adresatów średnikami, bo to trzeba przeczytać RFC2822 http://www.faqs.org/rfcs/rfc2822.html
spróbój na przykład przecinkiem bo tak napisali w manualu jako pierwszy przykład
Go to the top of the page
+Quote Post

Posty w temacie


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: 10.10.2025 - 12:30