magento contact form unable to submit your request - php

I am currently in the process of doing a project in magento.
I have a problem with my contact form: emails are not sent to me.
I did a test and I still get this message:
Unable to submit your request . Please, try again later

It's probably because an exception is thrown as you can see in the file
app/code/core/Mage/Contacts/controllers/IndexController.php in the postAction() function, you should try to debug from here.
Maybe the contact email failled to be sent (if you are in localhost and have no mail server?), that could cause the exception that shows this error.

I've been struggling with this for a day as nobody gives a clear answer on the topic.
In order to get it working there are 2 options:
Configure smtp server for email sending using smtp pro extension from Magento connect
Make Magento use the SendMail function of the webserver
As the first option didn't work for me, as my hosting provider somehow block the smtp outgoing connection, I needed to use the SendMail function.
The quick and dirty trick I used, was to change /app/code/core/Mage/Core/Model/Email/Template.php line 116:
Zend_Mail::setDefaultTransport($transport); → //Zend_Mail::setDefaultTransport($transport);
After this my error message at the contact form was gone and I received
the email correctly.
Be carefull: This is not a good solution as it will be undone at a Magento update. Also it was not tested for the other email functions of Magento.

Related

SMTP connect() failed error on PHPmailer with reCaptcha on a CentOS server

My company wants to host a website on a CentOS server with a contact form and with a captcha and I stumbled upon PHPMailer. The code works on my localhost, but not on CentOS. I am getting a SMTP connect() failed error when I try to send a message to the email.
Also I notice when the captcha expires and when I click the checkbox again an error message was shown:
Cannot contact reCaptcha. Check your connection and try again.
Is it possible that it has a connection to the problem I'm having? I am still really new especially on CentOS. I've tried to google the problem, but I seem to cannot find a best solution for a fix.
PHPMailer has a debug setting so check this link:
Debugging PHP Mail() and/or PHPMailerenter link description here
+ Check whether you're using SMTP (and SMTP Authentication) or just sendmail
Maybe create a test script to use the simple php mail() function to run some tests to see if it's at PHP end or sendmail (exim or whatever mail server you have on the centOS box)
ReCapture is reset/cleared with the submission of your form so the first time you submit the form it will validate. The second submission it will not as it has either been cleared or changed by the first submission.
If you refresh the page the reCapture will reload and you will be able to submit.
if you have 2 problems I would remove 1 of them and fix the one you're focusing on. Them move onto the second one. i.e. remove capture from your form and get the mail running. then add the capture component.
Hope that helps

SMTP Error Issue - PHPMailer

I have a daily newsletter I send out to a list of people each day. I use PHP and the PHPMailer object to send the emails.
This has been working fine up until today when I didn't get an email (test) and I checked the logs to find that intermittently I was getting SMTP errors back from
mail->Send();
Method of the class on SOME of the people - not all of them.
All of the emails were exactly the same size (length in characters) apart from their name and email address.
The error details from
$mail->ErrorInfo;
Included these two errors
SMTP Error: Data not accepted.<p>SMTP server error: 2.1.5 Ok
SMTP Error: Data not accepted.<p&gtSMTP server error: </p>
Why there are broken P tags in the error message I have no idea - also why the first error has OK in it??
However other people in the loop had emails go out fine.
Also when I put the script into test mode so ONLY these failures were emailed out (so one call of the script = one email to one person), I found no problem and the people got their emaail.
Now I asked tech support what the error meant and got back "Google it" and I can't find the error 2.1.5 OK anywhere. I don't really get why it says OK after an error either.
As a test for tomorrow I put a test in for a failed Send and then a Sleep for 5 seconds with a retry.
I don't know if this will help but I thought that maybe my SMTP server which is on the same server as my script (Rackspace VPS Linux) was having temporary issues connecting so a sleep might be handy in this situation.
This is the first time I have had this issue, I haven't rebooted APACHE or my server (or mailserver) and before this script I had another one send out 403 emails without any problem.
It would be nice to know what the error is and why it happened though.
Rob
That error is defined exactly where you would expect it to be - in the RFC that defines SMTP error codes. 2.1.5 means "Destination address valid". That it starts with a 2 means it's not an error as such, but a response code - warnings and errors start with 4 and 5. Why you got it, I don't know, but it certainly seems it was not expected in that context. Mail servers often have problems - they run out of disk space, get swamped by spam filtering, and this is why mail servers have queues. Sending directly using PHPMailer's SMTP class is not appropriate for high-volume sending - using SMTP is fine, but point it at a proper (nearby) MTA that can handle deliveries properly.
As for the garbled ErrorInfo content, I suspect you are using an old version of PHPMailer - the debug output has been cleaned up fairly recently. Another thing that changed lately is the handling of errors during single sends to multiple recipients (e.g. BCCs) - it's now much more likely to get to the end of a long recipient list without giving up than it was before.

How can I debug email sending within my Symfony2 application?

I am using the FOSUser bundle within my Symfony2 application. I am trying to get the email functionality working but can't get any emails to send successfully.
My development environment is a Ubuntu virtual machine. I tried to use my Gmail account details as described here. I also checked the error logs but nothing regarding the email sending is logged.
I attempted to send a test email using a test controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
class TestEmailController extends Controller
{
public function sendEmailAction()
{
$message = \Swift_Message::newInstance()
->setSubject('Hello Email')
->setFrom('send#example.com')
->setTo('me#myemailaddress.com') // use a valid email in actual code...
->setBody('yo, wassup!');
$this->get('mailer')->send($message);
return $this->render('SysDevPunctualityBundle:TestEmail:sendEmail.html.twig', array(
// ...
));
}
}
However this triggers an error with Symfony's web profiler toolbar and I get the following message; "Token "3c494e" was not found in the database."
After some digging around I found this question I followed the suggestion of removing the spool option and also added a 'from_email' option. This made a difference, I am now getting a timeout error:
Connection could not be established with host smtp.gmail.com [Connection timed out #110]
My guess is that the firewall is blocking the request, I don't know how to find out for sure.
Appreciate if anyone can point me in the right direction.
I discovered that the source of the problem was that my work firewall was blocking access to the Gmail SMTP server. I switched to another SMTP server (set up by our IT department) and email sending now works fine.
Check these two links from the cookbook, to find out how to handle emails while developing: http://symfony.com/doc/current/cookbook/email/dev_environment.html & http://symfony.com/doc/current/cookbook/email/spool.html

Moodle New User Email Confirmation Error - Tried to send you an email but failed

Whenever a new user tries to create a new account, they get this message
Tried to send you an email but failed!
I tried setting up an email and using the smtp settings in Site
Administration -> Message output -> Email and that did not work.
I called my Host company (inmotion hosting) and they verified that my
settings were correct.
I tried just leaving the settings blank in email so that the phpmailer would send the emails, but that is not working and I still get the same message.
I have searched all overand I cannot find any helpful information on why this is happening,
but I find A LOT of people who are having this issue.
This has turned into a MAJOR show stopper and I am wondering what avenues I have to troubleshoot this. Does anyone have any information on how this is fixed?
Thanks in advance.
It might be missing a "from" email - have you got a support email set up?
/admin/settings.php?section=supportcontact
Or go to Site Administration > Server -> Support contact
I've had a similar issue. It works fine for the first three users created (in quick succession) but then fails for a few minutes. Enabling debugging (Site Admin -> Development -> Debugging page) showed that this was due to timeouts:
Debug info:
Error code: auth_emailnoemail
Stack trace:
line 463 of /lib/setuplib.php: moodle_exception thrown
line 106 of /auth/email/auth.php: call to print_error()
line 70 of /login/signup.php: call to auth_plugin_email->user_signup()
Output buffer: profile_field_PC<pre> SMTP -> ERROR: Failed to connect to server: Connection timed out (110)SMTP connect() failed. </pre>
This appears to be an anti-spam "feature" of the Amazon SES service we were using, which we will need to get around.
I know this is an old post but I will add my solution and give many thanks to Russell for that part of it.
This site had been moved over to Bluehost and come to discover that client did not set up an email account for Admin User - so in addition to checking that there is an email in the Admin settings, also verify that that email address exists and is reachable!

Mail sent with Symfony2 never delivered

I work with Symfony2, up to date (2.4.1). I send an email with Swifmailer, but it never delivered.
Symfony's logs say the email is sent. I tried with memory and file spooling. With the file spooling when I execute swiftmailer:spool:send --env=dev, it says "Processing default mailer... 1 emails sent". So everything is supposed to work. The config is ok (no delivery_address defined for dev or other way to catch mail while developing).
My SysAdmin says there is no problem on the serverside. The others SF2 host on the same server (other Virtual host) are sending mail fine. So I tried to place my app on a supposed working other virtual host, but no way, emails don't arrived. I begin to think it's an issue with the last version of Symfony (my others app are on 2.4.0). I tried to create a new symfony app, from zero, and I get the same problem. I'm lost. Does somebody have a similar problem? Or a way to fix it?
$message = \Swift_Message::newInstance()
->setSubject('Hello Email')
->setFrom('noreply#domain.com')
->setTo('myemail#example.com')
->setBody('TEST');
$this->get('mailer')->send($message);
PS: When I send an email with mail() function of PHP, it works.

Categories