I'm trying to use mailhandler to get Yahoo!-like functionality out of my website. However, any data that is sent to my website (typically a comment to a group forum post that has been mailed to a site user) was producing a mailhandler error like this:
"No Data!!!"
This appears to not be happening any longer, but the subsequent php errors still are. The php errors are:
*Invalid argument supplied for foreach() in /homepages/41/d173730136/htdocs/realrational/modules/node/node.module on line 521.
*Message implode() [function.implode]: Invalid arguments passed in /homepages/41/d173730136/htdocs/realrational/modules/node/node.module on line 525.
*You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1 query: SELECT n.nid, n.vid, n.type, n.status, n.created, n.changed, n.comment, n.promote, n.sticky, r.timestamp AS revision_timestamp, r.title, r.body, r.teaser, r.log, r.format, u.uid, u.name, u.picture, u.data FROM node n INNER JOIN users u ON u.uid = n.uid INNER JOIN node_revisions r ON r.vid = n.vid WHERE in /homepages/41/d173730136/htdocs/realrational/includes/database.mysql.inc on line 172.
I have posted more details here:
http://drupal.org/node/264946#comment-912023
Please take a look at that link, as I think there may be some good info there for diagnosing the problem. The gist of it is that the comment is making it into the db somewhere (I don't have the data tables to look at, so I can't confirm the details) as the comment does appear on the admin/content/comment page, but the URL for the location of the comment has clipped the first two characters after ?q=node/. That is, if the content should be stored at ?q=node/440#comment-179, the website reports it is at ?q=node/0#comment-179. There is no content at ?q=node/0#comment-179 (you get a page not found error), but if you follow the link to edit the comment from admin/content/comment page, the content is available from that link. Very strange.
My guess at the moment is that after retrieving an email, mailhandler is parsing the data badly somewhere immediately after the "no data" error, and when the database is populated, bad data is going in there somewhere, perhaps because an unhandled delimiter is causing the data to spill over into the wrong db fields?
At any rate, this means our users cannot reply to emails and expect their comment to come back to the website. Please help!
-Saganesque
Comments
Comment #1
Saganesque commentedI'll offer here steps to reproduce:
1. Post a forum entry on the website for a user eligible to receive email notifications new entries are made. This can be a new topic or a comment to an existing one.
2. Wait for the notification to hit the user's inbox, then reply. This should post a comment back to the existing forum entry on the web site.
3. Run the cron job to force mailhandler to pick up mail.
4. Note the php errors in the error log and no comment on the web site.
Comment #2
Saganesque commentedSorry to squeal, but the ability to respond to emails was we thought out-of-the-box functionality for the mailhandler module. Is there anyone that could please assist with this one? I don't want to submit a bug until I've determined it isn't a config issue.
Comment #3
Saganesque commentedReassigning as bug report.
Comment #4
Saganesque commentedTraced error to module Casetracker, which isn't playing nice with mailhandler right now.