13. april 2004 - 10:12
Der er
5 kommentarer
Sende mails til mail-adr hentet i database?
Hejsa.
Jeg er ved at lave en hjemmeside hvor det skal være muligt at sende et nyhedsbrev til alle medlemmer. Medlemmernes mail-adresser ligger i en database.
Mit spørgsmål er, hvordan får jeg sendt mails til dem alle, jeg har prøvet med en løkke, hvor den sender til en mail-adr af gangen, men det vil simpelhen ikke fungere.
HELP!!!!
- hjelmb
13. april 2004 - 10:58
#2
Jeg kender godt den hjemmeside og har brugt den, men syntes ikke at jeg kan finde svaret på mit problem.
min kode ser sådan ud:
mysql_connect($sql_host,$sql_user,$sql_passwd)or die (mysql_error());
mysql_select_db($db)or die (mysql_error());
$resultat = mysql_query("SELECT mailadr FROM mail");
if ($action == "OK"){
$overskrift=strip_tags($overskrift);
$tekst=strip_tags($tekst);
while ($resultat) {
$row = mysql_fetch_array($resultat);
$mail=strip_tags($row);
mail($mail, $overskrift, $tekst);
}
}
13. april 2004 - 14:13
#3
mysql_connect($sql_host,$sql_user,$sql_passwd)or die (mysql_error());
mysql_select_db($db)or die (mysql_error());
$resultat = mysql_query("SELECT mailadr FROM mail");
while ($data = mysql_fetch_array($resultat)){
if ($action == "OK"){
$overskrift=strip_tags($overskrift);
$tekst=strip_tags($tekst);
while ($resultat) {
$row = mysql_fetch_array($resultat);
$mail=strip_tags($row);
mail($mail, $overskrift, $tekst);
}
}
}
13. april 2004 - 14:13
#4
sludder
mysql_connect($sql_host,$sql_user,$sql_passwd)or die (mysql_error());
mysql_select_db($db)or die (mysql_error());
$resultat = mysql_query("SELECT mailadr FROM mail");
while ($data = mysql_fetch_array($resultat)){
if ($action == "OK"){
$overskrift=strip_tags($overskrift);
$tekst=strip_tags($tekst);
while ($resultat) {
$row = mysql_fetch_array($resultat);
$mail=strip_tags($row);
mail($data[mail], $overskrift, $tekst);
}
}
}
13. april 2004 - 17:13
#5
prøv evt. denne her: (den er taget fra et indlæg her fra E engang)
class smtp_client {
var $connection;
var $server;
var $elog_fp;
var $log_file='./smtp_client.log';
var $do_log=true;
// default constructor
function smtp_client($server='mail3.cliche.dk') { //din udbyders smtp server
if (!$server) $this->server="localhost";
else $this->server=$server;
$this->connection = fsockopen($this->server, 25);
if ($this->connection <= 0) return 0;
$this->elog(fgets($this->connection, 1024));
$this->elog("HELO xyz\r\n", 1);
fputs($this->connection,"HELO xyz\r\n");
$this->elog(fgets($this->connection, 1024));
}
function email($from_mail, $to_mail, $to_name, $header, $subject, $body) {
if ($this->connection <= 0) return 0;
$this->elog("MAIL FROM:$from_mail", 1);
fputs($this->connection,"MAIL FROM:$from_mail\r\n");
$this->elog(fgets($this->connection, 1024));
$this->elog("RCPT TO:$to_mail", 1);
fputs($this->connection, "RCPT TO:$to_mail\r\n");
$this->elog(fgets($this->connection, 1024));
$this->elog("DATA", 1);
fputs($this->connection, "DATA\r\n");
$this->elog(fgets($this->connection, 1024));
$this->elog("Subject: $subject", 1);
$this->elog("To: $to_name", 1);
fputs($this->connection,"Subject: $subject\r\n");
fputs($this->connection,"To: $to_name\r\n");
if ($header) {
$this->elog($header, 1);
fputs($this->connection, "$header\r\n");
}
$this->elog("", 1);
$this->elog($body, 1);
$this->elog(".", 1);
fputs($this->connection,"\r\n");
fputs($this->connection,"$body \r\n");
fputs($this->connection,".\r\n");
$this->elog(fgets($this->connection, 1024));
return 1;
}
function send() {
if ($this->connection) {
fputs($this->connection, "QUIT\r\n");
fclose($this->connection);
$this->connection=0;
}
}
function close() { $this->send(); }
function elog($text, $mode=0) {
if (!$this->do_log) return;
// open file
if (!$this->elog_fp) {
if (!($this->elog_fp=fopen($this->log_file, 'a'))) return;
fwrite($this->elog_fp, "\n-------------------------------------------\n");
fwrite($this->elog_fp, " Sent " . date("Y-m-d H:i:s") . "\n");
fwrite($this->elog_fp, "-------------------------------------------\n");
}
// write to log
if (!$mode) fwrite($this->elog_fp, " $text\n");
else fwrite($this->elog_fp, "$text\n");
}
}
//åben forbindelse til database her
$res = mysql_query("select to_mail, to_name from Mailliste") or die (mysql_error());
$from = "soeren@friis-hosting.dk"; //din egen mail :-)
$header = "Content-type: text/plain; charset=ISO-8859-1";
$subject = "Nyt indlæg i TrænerForum"; //skriv selv noget her
$body = "$navn har skrevet dette indlæg i trænerforum: //din overskrift her
\n-----------------------------------------------------\n\n$besked";//din tekst her
$smtp = new smtp_client;
$smtp -> smtp_client();
while (list($to_mail, $to_name) = mysql_fetch_row($res)) {
$smtp->email("$from", "$to_mail", "$to_name", "$header", "$subject", "$body");
}
$smtp->send();
//luk din forbindelse her
?>
Jeg bruger selv ovenstående med succes
hilsen sf