Hallo,
Ich will mein Newsletterscript auf SMTP umstellen, da die mail() Funktion doch recht langsam ist.
Leider bleibt es nach der 1. Mail schon hängen. Hier mal der Quellcode:
Es wird nur 1 Mail verschickt und dann bekomm ich die Fehlermeldung "unable to add recipient"...
Kann mir da jemand weiter helfen?
Ich will mein Newsletterscript auf SMTP umstellen, da die mail() Funktion doch recht langsam ist.
Leider bleibt es nach der 1. Mail schon hängen. Hier mal der Quellcode:
PHP-Code:
<?php include('menu.php'); ?>
<?php
require ('sesspruf.php');
sesspruf($sessionid);
require('../config/config.php');
$db = mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($dbname,$db);
$ok=1;
$sql = mysql_query("SELECT email from mt_user");
$eanzahl=mysql_num_rows($sql);
$daten=mysql_query("select * from mt_settings");
$setting=mysql_fetch_array($daten);
$adminmail=$setting[adminmail];
if($verschicken){
require 'SMTP.php';
$host = 'smtp.1und1.com';
$from = 'info@meinedomain.de';
/* Create a new Net_SMTP object. */
if (! ($smtp = new Net_SMTP($host))) {
die("Unable to instantiate Net_SMTP object\n");
}
/* Connect to the SMTP server. */
if (PEAR::isError($e = $smtp->connect())) {
die($e->getMessage() . "\n");
}
/* Send the 'MAIL FROM:' SMTP command. */
if (PEAR::isError($smtp->mailFrom($from))) {
die("Unable to set sender to <$from>\n");
}
for ($x=0;$x<$eanzahl-0;$x++){
echo "$ok - ";
$ok=$ok+1;
flush();
$rcpt=mysql_result($sql,$x,"email");
/* Address the message to each of the recipients. */
if (PEAR::isError($res = $smtp->rcptTo($rcpt))) {
die("Unable to add recipient <$rcpt>: " . $res->getMessage() . "\n");
}
/* Set the body of the message. */
if (PEAR::isError($smtp->data($ueberschrift . "\r\n" . $haupt))) {
die("Unable to send data\n");
}
}$ausgabe="<b><font color=\"#FF0000\" size=\"2\" face=\"Verdana\">Newsletter wurde an $eanzahl Personen erfolgreich verschickt.</font></b>";
/* Disconnect from the SMTP server. */
$smtp->disconnect();
}
echo "<html>";
echo "<head>";
echo "<title>$titel</title>";
echo "</head>";
echo "<body>";
echo "<center>";
echo "$ausgabe<br><br>";
echo "<font size=\"2\" face=\"Verdana\">Newsletter an: $eanzahl Personen schicken.<br><br>Bei einer großen Mitgliederzahl kann der Versand etwas dauern. Nach klicken auf Verschicken, bitte so lange warten, bis ganz oben eine Bestätigung kommt.";
echo "<form method=\"post\" action=\"$PHP_SELF\">";
echo "<br>Email Betreff<br><input type=\"text\" size=\"35\" name=\"ueberschrift\" value=\"$ueberschrift\">";
echo "<br>Email Text:<br><textarea rows=\"10\" cols=\"50\" name=\"haupt\">$haupt</textarea>";
echo "<br><input type=\"Submit\" name=\"verschicken\" value=\"Verschicken\"><input type=\"hidden\" name=\"sessionid\" value=\"$sessionid\"></form></font>";
mysql_close($db);
?>
Kann mir da jemand weiter helfen?
Kommentar