Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL]Jak wysłać mailing?
Forum PHP.pl > Forum > Przedszkole
grigorius
Na początku chciałbym zaznaczyć że jestem kompletnym amatorem i próbowałem już wysłać ten mailing winksmiley.jpg
Więc zacznę od tego że zebrałem bazę 1200 maili i ciągle rośnie, chciałbym rozesłać mailing ale pojawia się problem, jak wysłać mailing mając jedynie plik .sql? Ściągałem jakieś programy do mailingów ale w tym formacie żaden program mi nic nie wyśle.
pedro84
Zwykły plik php, a w nim mail
Ulysess
sql to pewnie zrzut tabeli . ja radzę tak z bazy pobieraj e-mail w i pętli while wykonuj wysłanie e-mail przez funkcje mail
boro11
Jak masz na serwie w cPanelu fantastico to zainstaluj sobie PHPlist do rozsylania mailow. Jak nie masz fantastico tez mozesz to zainstalowac oczywiscie tyle ze recznie
grigorius
Nie mam cpanela tylko directadmina, może mi ktoś doradzić jak wysłać ten mailing? Potrzebuje zrobić to dzisiaj.
amii
1. Zaimportuj ten plik sql do bazy danych
2. Zrób zapytanie powinno to wyglądać mniej więcej tak, oczywiscie musisz pozmieniać nazwy tabeli w zapytaniu i powpisywac dane o bazie:

  1. define('SQL_HOST', 'localhost'); //numer hosta na 99% localhost
  2. define('SQL_USER', 'username'); //nazwa uzytkownika bazy danych
  3. define('SQL_PASS', 'haslo'); //haslo bazy danych
  4. define('SQL_DB', 'nazwa_bazy'); //nazwa bazy danych
  5.  
  6.  
  7. $conn = mysql_connect(SQL_HOST, SQL_USER, SQL_PASS) or die (mysql_error());
  8. mysql_select_db(SQL_DB, $conn) or die ('Wystapil blad podczas laczenia sie z serwerem bazy danych, tresc bledu: ' . mysql_error());
  9.  
  10. $sql = "SELECT email FROM tabelka";
  11. $zapytaj = mysql_query($sql) or die ('Nie moge sie polaczyc z baza' . mysql_error());
  12.  
  13. while ($row = mysql_fetch_array($zapytaj)) {
  14. $temat = 'tu se piszesz temat';
  15.  
  16. $naglowek .= 'From: twoj@adres.pl' . "\r\n" .
  17. 'Reply-To: twoj@aders.pl' . "\r\n" .
  18. 'Content-type: text/html; charset=iso-8859-2' . "\r\n" . //wstaw kodowanie
  19. 'X-Mailer: PHP/' . phpversion();
  20.  
  21. $wiadomosc = 'tu se piszesz wiadomosc';
  22.  
  23. $wyslij = mail($row['email'], $temat, $wiadomosc, $naglowek);
  24. echo 'Wyslalem do ' . $row['emaile'] . '<br>'; //opcjonalnie do wyswietlenia i sprawdzenia
  25.  
  26. }
!*!
Podczepię się do tematu bo nie ma sensu robić kolejnego... Jak sprawdzić czy ten mail w pętli został wysłany? I gdyby nie, wyświetlić jakiś komunikat o błędzie bądź zmienić status w bazie na "nie wysłano" przy odpowiednim mailu. I jeszcze jedno, czy funkcja mail() jest wydajna? I nie zadławi się przy 500 000 adresów mail w bazie.
kilas88
Cytat(!*! @ 13.07.2010, 10:16:45 ) *
Podczepię się do tematu bo nie ma sensu robić kolejnego... Jak sprawdzić czy ten mail w pętli został wysłany? I gdyby nie, wyświetlić jakiś komunikat o błędzie bądź zmienić status w bazie na "nie wysłano" przy odpowiednim mailu. I jeszcze jedno, czy funkcja mail() jest wydajna? I nie zadławi się przy 500 000 adresów mail w bazie.

Lepiej użyć SMTP (przy pomocy PHPMailer czy innego wynalazku).
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.