Pagina 1 din 1

Trimite email cu date din baza de date

Scris: Dum Noi 04, 2012
de cadou
Deci ceea ce am eu nevoie este : Sa preia anumite informatii din baza de date si sa le trimita la o adresa de email.
Cum as putea sa fac acest lucru ?

Trimite email cu date din baza de date

Scris: Dum Noi 04, 2012
de MarPlo
Pentru a trimite email folosind PHP, se poate cu functia mail($to, $subiect, $mesaj, $from ) , vezi lectia: Trimitere e-mail .
Ca sa trimiti cu date preluate din baza de date, se face Selectul, se definesc datele pt. parametrii functiei: $to, $subiect, $mesaj, $from ; si se apeleaza functia mail() cu aceste date.
Cam asa (nu am testat, daca e nevoie corectezi ca sa fie codul adaptat la scriptul tau: nume tabel, coloane).

Cod: Selectaţi tot

<?php
// ... conectare la baza de date mysql

$sub = 'Subiect e-mail';
$msg = 'Mesajul din e-mail';
$from = 'From: adresa_admin@de.mail';

$mailsent = array();      // array in care sa fie retinute adresele de e-mail la care s-a trimis

$sql = "SELECT * FROM `nume_tabel`";
$result = mysql_query($sql);
if(mysql_errno()) {
  echo '<br />'. mysql_errno(). ' : '. mysql_error(). '<br />';
}
// daca e cel putin un rand returnat
if(mysql_num_rows($result) > 0) {
  // parcurge randurile
  while ($row = mysql_fetch_array($result, MYSQL_ASSOC)) {
    // daca adresa de e-mail nu e in $mailsent
    if(!in_array($row['email'], $mailsent)) {
      // afiseaza mesaj daca poate sau nu sa trimita e-mail-ul
      if(mail($row['email'], $sub, $msg, $from )) {
        $mailsent[] = $row['email'];         // adauga in array ca trimis
        echo '<br/>Email trimis la: '. $row['email'];
      }
      else echo '<br/>Nu poate trimite Email la: '. $row['email'];
    }
  }
}
else {
  echo '0 resulte';
}
?>
- Eventual, vezi si raspunsurile de la subiectul Trimitere E-Mail la mai multe adrese.

Trimite email cu date din baza de date

Scris: Dum Noi 04, 2012
de cadou
marplo ceea ce miai dat e bun , dar e cu totul altceva ceea ce vroiam eu.
Eu doresc asa ceva : sa preia din baza de date numele de utilizator (nume) si parola (parola) si sa le trimita la adresa de email specificata de utilizator intr-un formular. Pe scurt: "recuperare parola pierduta".
Camp Id-ul de messenger @yahoo.com
Si Trimite.
Daca exista in baza de date id-ul de messenger sa ii trimita email la adresa de mess din baza de date, daca nu exista sa apara mesaj ca nu exista in baza de date id-ul xxx.....xxxx.

Re: Trimite email cu date din baza de date

Scris: Dum Noi 04, 2012
de steell
Nu vei gasi niciodata un script care sa faca exact ce vrei tu mai ales un script complex cum este cel pe care il ceri. Marplo ti-a oferit un exemplu cum se trimit informatii prin email. Modificand acel script poti sa faci sa preia datele din baza de date si sa le trimita prin email. Doar tu sti ce baza de date ai, ce campuri ai in ea, de ce fel sun fiecare etc. foloseste si scriptul asta
https://marplo.net/php-mysql/mailer" target="_blank
Nu-i mare branza se preiei niste date din baza de date, insa cum am zis mai sus noi nu stim ce ai scriu tu in paginile tale. Deci informeaza-ne dupa ce ai terminat scriptul daca intampini probleme la el, daca de erori etc.