Form won't send email

Permalink 1 user found helpful
Hi,

I've searched this problem and found numerous posts but I can't seem to find an answer to this question:

I have a form on my website which doesn't send the results to the email address specified.

I specify the email address, as you know, by clicking on the form in edit mode > options > set email.

Something that may help: when I go to the dashboard > logs (where it logs form entries) I see this:

**EMAILS ARE ENABLED. THIS EMAIL WAS SENT TO mail()**

So it seems it doesn't know or cannot find the email address to send the form results to?

I'd really appreciate your help to be able to receive my form results by email.

 
jordanlev replied on at Permalink Reply
jordanlev
This is likely an issue with your server's configuration, not concrete5 itself. I would try creating a simple php script (outside of concrete5) that just uses the built-in "mail()" function ( seehttp://us2.php.net/manual/en/function.mail.php... ) to send an email and see if that works -- if not, then you will need to investigate the server mail setup (which you'd have to google around for, e.g. "php mail server not sending"). Good luck!
andrew replied on at Permalink Reply
andrew
Yeah, I agree with Jordan. The line you found in the log always says "mail()" - that's just how the log entry is written. You can see which exact email address it is setup to send to below.

A couple things to try:

1. If you're sending mail to multiple recipients (separated by commas) try sending to just one. There's a bug that makes it so that older versions of concrete can only go to one email address from the form (even though it says multiple). This is fixed in 5.4 onward (and only appeared in 5.3.3.1 I believe>)

2. mail from your host may be dropped by the server it's sending to, because your is probably not sending mail with a valid "from" email address...the resulting server might think it is spam.

3. Is the mail address the same domain as your web server? a lot of times on cpanel servers if the mail address is the same as the domain it's sending from, but mail is hosted externally, cpanel just delivers it to the local domain rather than looking for where it should be delivering to.

I agree this is a server configuration issue.
criscross replied on at Permalink Reply
hi
i also experience the same problem - form is sending mail (at least this is what the dashboard log says) but no mail is coming to my mailbox

have tried you idea with mail() function script
and this works well
meaning, that my server is configured appropriately

so?
any idea where to look next?

obviously this is a problem for a number of people; maybe the concrete5 team could address the issue?

happy for any hint

cris
happymedium replied on at Permalink Reply
Hi, I know this thread is from May, but I'm having the same issue over here. When my site was built in June, the forms worked just fine and I always got the email.

Someone filled out the form yesterday, though, and although Dashboard said the mail had been sent (to the correct email address), I never received it. I've searched my spam folders and I've tried again multiple times, but no luck. Please help!

-Natalie
jordanlev replied on at Permalink Reply
jordanlev
This kind of problem is very hard to diagnose because it could be so many different things depending on the way the server is set up. If possible, can you access the php error log and see if that reported a problem with the sending of the mail? On many web hosts, this can be accessed through the Control Panel (or "CPanel" as it's sometimes called).
If you can find what the problem is, you might then be able to ask the web hosting company's tech support about it and see what they have to say.

Sorry there's no immediate solution!
happymedium replied on at Permalink Reply
Just checked the error log; nothing reported about mail not being sent. Anywhere else I should look?
jordanlev replied on at Permalink Reply
jordanlev
Sorry, but I have no clue. :(
happymedium replied on at Permalink Reply
Tried it again, and these error messages appeared in the log:

[Sat Aug 21 17:16:47 2010] [error] [client 193.47.80.38] File does not exist: /home/overeasy/public_html/404.shtml
[Sat Aug 21 17:16:47 2010] [error] [client 193.47.80.38] File does not exist: /home/overeasy/public_html/robots.txt

Related? Yesterday I removed and then re-added the contact form, but that didn't seem to do anything.
admin replied on at Permalink Reply
I know this thread was a looooong time ago, but I'm having this problem now on our web site 21ct.com

Following your tip, I created the following PHP file:

<?php
$to = "me@mypersonalemail.com";
$subject = "This is my subject 2";
$message = "This is my message 2";
mail($to , $subject , $message);
?>


If I set the TO address to an address on our domain, it does not send an email. If I set the TO address to my personal account (different domain), it does send an email.

Also, I added my personal email address to the form on my C5 site, it sends the email.

Now, knowing this, what the heck do I do? :)
jordanlev replied on at Permalink Reply
jordanlev
You contact your web host's tech support with this information (there's obviously something weird going on with their setup or your setup on their server because it's working to external domains but not your own). Good luck!
jordanlev replied on at Permalink Reply
jordanlev
Not sure if this will solve your problem, but check this out:
http://www.concrete5.org/community/forums/chat/php-mail-from-addres...
VOC1973 replied on at Permalink Reply