Question

There was a problem with the subscription. this is the message I get after I enter an email. When I go to the admin panel the email is added. I would like it NOT to display this message. any suggestions please

Was it helpful?

Solution

The only place in Magento that error string occurs is in the following try/catch block

#File: app/code/core/Mage/Newsletter/controllers/SubscriberController.php
try {
    //...snip!...
}
catch (Mage_Core_Exception $e) {
    $session->addException($e, $this->__('There was a problem with the subscription: %s', $e->getMessage()));
}
catch (Exception $e) {
    $session->addException($e, $this->__('There was a problem with the subscription.'));
}

Since you reported the error message as "There was a problem with the subscription.", that means the newsletter subscription code is throwing some sore of PHP exception, caught by the catch (Exception $e) { block. Magento does not output the messages from PHP exceptions. If I was in your position I'd temporarily change the exception handling code to include the error message

    $session->addException($e, $this->__('There was a problem with the subscription. ' . $e->getMessage()));

This will let you track down the PHP error that's triggering your error message.

Per the comment below, the only place the "Cannot set standard header from addHeader()" exception error exists is

#File: lib/Zend/Mail.php
    $prohibit = array('to', 'cc', 'bcc', 'from', 'subject',
                      'reply-to', 'return-path',
                      'date', 'message-id',
                     );
    if (in_array(strtolower($name), $prohibit)) {
        /**
         * @see Zend_Mail_Exception
         */
        #require_once 'Zend/Mail/Exception.php';
        throw new Zend_Mail_Exception('Cannot set standard header from addHeader()');
    }

    $value = $this->_filterOther($value);
    $value = $this->_encodeHeader($value);
    $this->_storeHeader($name, $value, $append);

    return $this;

My guess is somewhere in your system someone's added some custom code that tries to set one of the standard email headers via the addHeader method.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top