2008-09-30 02:31:37
Fail to send external email but displays success message
Problem: I am using a shared hosting service, so I am unable to alter the php.ini file, and I have tried many different ways to set up the smtp files, but all my efforts fail. I have looked in the forums, but I have not found a complete solution.
Symptoms: When I register as a new user or ask the site to remind me of my password via email, it displays a success message, but the email never arrives. I have tried different email accounts and checked the junk mail folder.
What I've tried:
1. config.inc.php: I've tried with define('MAIL_USE_SMTP', true); as both true and false. It seems to be no good running to my default php.ini settings.
2. In atutormailer.class.php, I've tried $this->SMTPAuth = false; // turn on SMTP authentication as both true and false. (I've made it alternately match and opposite to the value in class.phpmailer.php.)
3. Maybe the problem lies in my class.phpmailer.php. Here is an abridged version. Does anyone see any problems? Note that I have changed some of the options a few times to experiment:
var $Priority = 3;
var $CharSet = "iso-8859-1";
var $ContentType = "text/plain";
var $Encoding = "8bit";
var $ErrorInfo = "";
var $From = "studywithme@chinesetonestudio.com";
var $FromName = "ChineseToneStudio";
var $Sender = "studywithme@chinesetonestudio.com";
var $Subject = "";
var $Body = "";
var $AltBody = "";
var $WordWrap = 0;
var $Mailer = "smtp";
var $Sendmail = "/usr/sbin/sendmail";
var $PluginDir = "";
var $Version = "1.73";
var $ConfirmReadingTo = "";
var $Hostname = "mail.chinesetonestudio.com";
var $Host = "mail.chinesetonestudio.com";
var $Port = 8889;
var $Helo = "";
var $SMTPAuth = true;
var $Username = "studywithme";
var $Password = "XXXXXXXXXXXXX";
var $Timeout = 10;
var $SMTPDebug = false;
var $SMTPKeepAlive = false;
var $smtp = NULL;
var $to = array();
var $cc = array();
var $bcc = array();
var $ReplyTo = array();
var $attachment = array();
var $CustomHeader = array();
var $message_type = "";
var $boundary = array();
var $language = array();
var $error_count = 0;
var $LE = "\n";
Questions: 1. Since I can't change my server's php.ini file, should the config.inc.php define('MAIL_USE_SMTP', true); be true or false?
2. Should I be using smtp or one of the other options?
3. If I use smtp (or one of the others) what parts of what files should I alter?
Site location: http://chinesetonestudio.com/phptesting/atutor/
PHPinfo file: http://chinesetonestudio.com/whatsmyphp.php
Operating system ATutor is installed on - Windows NT 5.2
ATutor version - 1.6.1
Patch #s applied - 1-12
ATutor theme name -
PHP version -5.2.5
MySQL version - 5.0.54
Webserver & version -
Copies of error messages - ?
Changes to default settings - Just to tinker with these email files.
Web browser being used - Firefox,IE