Welcome to Geeklog, Anonymous Thursday, April 18 2024 @ 11:35 am EDT

Geeklog Forums

Registration Problem :(


Anonymous

Anonymous
Hi Guys. I know a lot of people had this problem, but neither solution (that I found, actually) worked with me. Everytime a user clicks on the "New User" link and fill up the data, Geeklog does not send his/hers password via e-mail... Mass mailling works perfectly (via the Admin interface)... I've tried to debug the PHP code, but I'm not a PHP programmer (C++ actually), so no luck there... any tips? I'm running Geeklog on Gentoo Linux 1.2, Apache/1.3.27 and Geeklog 1.3.7. Thanks!
 Quote

Status: offline

rawdata

Forum User
Full Member
Registered: 02/17/03
Posts: 236
Most likely the problem has something to do with PHP's mail() function and/or your mail server. If you're running your own server, first verify that you have the latest software release and patches for the mail server. That may fix the problem. If not, then insert some debugging either right before or after the mail function in the function emailpassword located in users.php. This will allow you to check whether GL is passing the right info to the mail function. You can either do this by sending the output to the error log like this:
Text Formatted Code

COM_errorLog("toemail: $A['email'] <<list out the rest of the variables here>>",1);
or to the screen using COM_errorLog (replace 1 with 2) or with an echo statement like this:
Text Formatted Code

echo("toemail: $A['email'] <<list out the rest of the variables here>>");
If you send output to the screen, you probably will want to temporarily comment out this section so you can read it since refreshes are pretty fast.
Text Formatted Code

        if ($msg) {
            $retval .= COM_refresh("{$_CONF['site_url']}/index.php?msg=$msg");
        } else {
            $retval .= COM_refresh("{$_CONF['site_url']}/index.php");
        }
 
If GL is not passing the right info, then come back and post where it is off. If GL is providing the correct info, then your mail server may not like something in the mail line. Start off with a very simple script like this and run it outside GL:
Text Formatted Code

<?php
$mailto   = 'test@foo.com';  // change this to a real email account
$mailfrom = 'From: tester@foo.com' // change this to a real account
$mailtext = 'Dummy Message Body Text';

for ($i=1; $i<=10; $i++) {
    $subject = 'Test message #' . $i;
    $sent = mail($mailto, $subject, $mailtext, $mailfrom);
    echo("mailto: $mailto mailfrom: $mailfrom<br>Subj: $subject <br>
    Message: $mailtext<br>Sent: $sent<br><br>");
}
echo("...all done");
?>
 
Keep building onto it slowly (and run it) until it looks like the one you're having problems with. You don't really need the echo statements, but I use them because otherwise the page is blank. This should help isolate what your mail server doesn't like so you can modify the mail line in GL. It's a good idea to send multiple messages to a few different addresses to see if all, a portion, or none are being delivered.

I recently helped someone troubleshoot an email problem. His was kinda weird. All emails were being delivered except for those sent from someone's profile. Some addresses never received any emails while others received only a subset. It turned out to be a combination of a problem on his email server plus having a "to" name in the mail line.

Hope this gives you some ideas on how to solve your problem.
 Quote

All times are EDT. The time is now 11:35 am.

  • Normal Topic
  • Sticky Topic
  • Locked Topic
  • New Post
  • Sticky Topic W/ New Post
  • Locked Topic W/ New Post
  •  View Anonymous Posts
  •  Able to post
  •  Filtered HTML Allowed
  •  Censored Content