SitePoint Sponsor

User Tag List

Page 2 of 4 FirstFirst 1234 LastLast
Results 26 to 50 of 77
  1. #26
    SitePoint Zealot
    Join Date
    May 2001
    Location
    UK
    Posts
    184
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I thought 15. smith@_subdomain.domain.tld was valid but when I tired to create a sub-domain "_test.mydomain.com" it said Syntax Mismatch.

    As for http://www.zend.com/codex.php?id=88&single=1 that is a bit long! Why not add a whois!? to make sure the domain is registered!?

    This is from php.net which I use

    function valid_email ($email) {
    if (eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$", $email, $check)) {
    if ( getmxrr(substr(strstr($check[0], '@'), 1), $validate_email_temp) ) {
    return TRUE;
    }
    }
    return FALSE;
    }

  2. #27
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    After testing a few regex, the one above, provided by MPK, seems to be the best of the bunch. My test code (which includes three different regex) and some test data are included below along with results.

    I guess my problem is knowing what is a valid email address. I had mistakenly suggested earlier in the thread that domain names with underscores (_) were valid when of course they are not.

    However, I wonder about subdomains? I just fiddled with Bind creating CName records (on a local development box) and Bind8 seemed happy to accept and resolve subdomains with underscores. What say others on this?

    I don't want to actually do a DNS lookup of the MX record for the domain name. Mainly for efficiency of the script. But also, because in my thinking this could be problematic. For example, it is conceivable that a domain name may not have a MX record, but that subdomains of that domain might - or vice versa ?!??

    Here is my test script and results:
    PHP Code:
    <?php

    $emails 
    = array(
       
       
    'john@domain.com',
       
    'john.smith@domain.com',
       
    'john.smith@domain.netcom.com',
       
    'john.smith@domain.co.uk',
       
    'john.smith@domain.com.au',
       
    'john.smith@domain.to',
       
    'smith@subdomain.domain.to',
       
    'smith@domain.to',
       
    'john@some-domain.com',
       
    'christopher.padfield@new.ox.ac.uk',   
       
    'john_smith@some_domain.com',
       
    'john_smith@some-domain.com',
       
    'john@domain....com',
       
    'john_smith@_domain.tld',
       
    'smith@_subdomain.domain.tld',
       
    'smith@sub_domain.domain.tld',
       
    'foo@bar',
       
    'foo@bar.b'
       
    );

    foreach (
    $emails as $e) {
       echo
          ++
    $i,  ': ',
          (int)(
    eregi("^[-a-z0-9\._]+@[-a-z0-9\._]+\.+[a-z]{2,3}$"$e)), 
          
    ' : ',
          (int)(
    eregi("^([-!#\$%&'*+./0-9=?A-Z^_`a-z{|}~ ])+@([-!#\$%&'*+/0-9=?A-Z^_`a-z{|}~ ]+\\.)+[a-zA-Z]{2,4}\$"$e)),
          
    ' : ',
          (int)(
    eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$"$e)),
          
    ': '$e,
          
    '<br>';
    }
    ?>
    Code:
    1: 1 : 1 : 1: john@domain.com
    2: 1 : 1 : 1: john.smith@domain.com
    3: 1 : 1 : 1: john.smith@domain.netcom.com
    4: 1 : 1 : 1: john.smith@domain.co.uk
    5: 1 : 1 : 1: john.smith@domain.com.au
    6: 1 : 1 : 1: john.smith@domain.to
    7: 1 : 1 : 1: smith@subdomain.domain.to
    8: 1 : 1 : 1: smith@domain.to
    9: 1 : 1 : 1: john@some-domain.com
    10: 1 : 1 : 1: christopher.padfield@new.ox.ac.uk
    11: 1 : 1 : 0: john_smith@some_domain.com
    12: 1 : 1 : 1: john_smith@some-domain.com
    13: 1 : 0 : 0: john@domain....com
    14: 1 : 1 : 0: john_smith@_domain.tld
    15: 1 : 1 : 0: smith@_subdomain.domain.tld
    16: 1 : 1 : 0: smith@sub_domain.domain.tld
    17: 0 : 0 : 0: foo@bar
    18: 0 : 0 : 0: foo@bar.b

  3. #28
    SitePoint Zealot NZ Joe's Avatar
    Join Date
    Apr 2001
    Location
    Kapiti, New Zealand
    Posts
    182
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Well it's as good as vBulletin's validation.
    Gravity always wins

  4. #29
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Well to complicate matters more - today I received an email from someone who had an address with an apostrphe in it! Something like

    fred.e.o'leary@domain.tld

    So I wonder if it is a matter of anything goes (in terms of being a valid character) for the user name, that is the string up to the @ ?

  5. #30
    SitePoint Wizard
    Join Date
    Jul 1999
    Location
    Chicago
    Posts
    2,629
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I'd say that even though it might not conform strictly to the standards, you should allow anything but whitespace for the username.

    I guess I must ask the question. Why would you spend all of your time writing the "perfect email regexp" when anyone could just say "support@microsoft.com" and bypass your hard work?

  6. #31
    You talkin to me? Anarchos's Avatar
    Join Date
    Oct 2000
    Location
    Austin, TX
    Posts
    1,438
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    That's what I said a long time ago.
    ck :: bringing chris to the masses.

  7. #32
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Always someone wanting an arguement Well, data validation is like security I guess - there is a cost/benefit trade-off what is acceptable. From the point of view of this application (as I hinted to earlier in this thread), the main task at the point where I validate a "well formed" email is to have the user correct any bad data they have entered while I have the opportunity of them attending to my web pages. The main aim of the exercise is to pick-up a new, valid and qualified member subscription - a new customer! People cannot be trusted to enter good data. I do not want to validate DNS MX records, because I believe that to be a problematic and inefficient excercise to perform real time in a php script that has to return a web page back to the user. Also, the subscription process is "double opt-in" anyway. That is, a user will need to follow an activation link from a confirmation email anyway. Any pending subscriptions for which the confirmation email bounces or which are not confirmed within two days are purged automatically.

    So the point of this exercise is to provide feedback to the user where the data they provide appears to not to be "well formed" - "hey dumbo, I think you've made a mistake. Try again". Validation that the account exists occurs by processing bounced emails. Finally, validation that the subscription is legitimate comes from the double-opt-in activation process.

    So, back to the subject at hand. Can someone throw me a bone here? Is the syntax below what I want? It incorporates aspen's suggestion from way back on the first page. I can't test it myself right this minute, but will do so a little later in the day.

    PHP Code:
    eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,3}$",*$e 

  8. #33
    midnight coder
    Join Date
    Dec 2000
    Location
    The flat edge of the world
    Posts
    838
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Will a hyphen in the username pass the reg test?

    robo-robo@ro.bo

  9. #34
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Can you believe I still haven't tested the above regex! I will do so and get back to the forum.

  10. #35
    <? echo "Kick me"; ?> petesmc's Avatar
    Join Date
    Nov 2000
    Location
    Hong Kong
    Posts
    1,508
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Hi,

    Don't forget that emails can contain a = sign eg.

    test=test@test.com

    -Peter

  11. #36
    SitePoint Enthusiast kcabobert's Avatar
    Join Date
    Aug 2001
    Location
    Topeka, KS
    Posts
    70
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Go have a look at: http://www.php.net/manual/en/function.mail.php People there have beat this to the ground too.

    (Forgive me if this was off subject, I accidentally posted it to the wrong email validate thread. But I hope it helps!! )
    Microsoft's Motto: Resistance is futile, you will be assimilated.

    My dog's name is Jade; she is a Miniature pinscher.
    Click here to see some of her pictures

  12. #37
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Break out the champagne!

    I have decided that the last regex that I posted (and the forth one in the test code below) is the best one to validate a well formed email.
    PHP Code:
    <?php

    $emails 
    = array(
       
       
    'john@domain.com',
       
    'john.smith@domain.com',
       
    'john.smith@domain.netcom.com',
       
    'john.smith@domain.co.uk',
       
    'john.smith@domain.com.au',
       
    'john.smith@domain.to',
       
    'smith@subdomain.domain.to',
       
    'smith@domain.to',
       
    'john@some-domain.com',
       
    'christopher.padfield@new.ox.ac.uk',   
       
    'john_smith@some_domain.com',
       
    'john_smith@some-domain.com',
       
    'john@domain....com',
       
    'john_smith@_domain.tld',
       
    'smith@_subdomain.domain.tld',
       
    'smith@sub_domain.domain.tld',
       
    'foo@bar',
       
    'foo@bar.b',
       
    'foo=bar@foo.bar',
       
    "tom.o'leary@foo.bar"
       
    );

    foreach (
    $emails as $e) {
       echo
          ++
    $i,  ': ',
          (int)(
    eregi("^[-a-z0-9\._]+@[-a-z0-9\._]+\.+[a-z]{2,3}$"$e)), 
          
    ' : ',
          (int)(
    eregi("^([-!#\$%&'*+./0-9=?A-Z^_`a-z{|}~ ])+@([-!#\$%&'*+/0-9=?A-Z^_`a-z{|}~ ]+\\.)+[a-zA-Z]{2,4}\$"$e)),
          
    ' : ',
          (int)(
    eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$"$e)),
          
    ' : ',
          (int)(
    eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,3}$"$e)),
          
    ': '$e,
          
    '<br>';
    }
    ?>
    Code:
    1: 1 : 1 : 1 : 1: john@domain.com
    2: 1 : 1 : 1 : 1: john.smith@domain.com
    3: 1 : 1 : 1 : 1: john.smith@domain.netcom.com
    4: 1 : 1 : 1 : 1: john.smith@domain.co.uk
    5: 1 : 1 : 1 : 1: john.smith@domain.com.au
    6: 1 : 1 : 1 : 1: john.smith@domain.to
    7: 1 : 1 : 1 : 1: smith@subdomain.domain.to
    8: 1 : 1 : 1 : 1: smith@domain.to
    9: 1 : 1 : 1 : 1: john@some-domain.com
    10: 1 : 1 : 1 : 1: christopher.padfield@new.ox.ac.uk
    11: 1 : 1 : 0 : 0: john_smith@some_domain.com
    12: 1 : 1 : 1 : 1: john_smith@some-domain.com
    13: 1 : 0 : 0 : 0: john@domain....com
    14: 1 : 1 : 0 : 0: john_smith@_domain.tld
    15: 1 : 1 : 0 : 0: smith@_subdomain.domain.tld
    16: 1 : 1 : 0 : 0: smith@sub_domain.domain.tld
    17: 0 : 0 : 0 : 0: foo@bar
    18: 0 : 0 : 0 : 0: foo@bar.b
    19: 0 : 1 : 0 : 1: foo=bar@foo.bar
    20: 0 : 1 : 0 : 1: tom.o'leary@foo.bar

  13. #38
    SitePoint Guru
    Join Date
    Aug 2001
    Location
    Amsterdam
    Posts
    788
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    But it doesn't validate nr 11 which is a true domain possibility isn't it???

    I would rather have that the system lets a few more slip through than block one that is valid..



    Greets Peanuts
    the neigbours (free) WIFI makes it just a little more fun

  14. #39
    SitePoint Guru
    Join Date
    Aug 2001
    Location
    Amsterdam
    Posts
    788
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    weird stuff

    I did try other stuff first but now I'm left with this:
    Code:
    $van = str_replace(" ", "", "$van"); 		
    if(eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*.[a-z]{2,3}$", $van))
    Where $van contains the emailadres ofcourse..
    Now if I try for instance this:
    ~canthappen
    I would hope for a error but it just sends the email anyway..

    this is what my mailprog would get
    ~canthappen@mail.domain.com
    Where mail.domain.com is my mail server..

    Please help.. I can't figure it out anymore.. :o(

    Greets

    Peanuts
    Last edited by peanuts; Oct 23, 2001 at 02:20.
    the neigbours (free) WIFI makes it just a little more fun

  15. #40
    SitePoint Addict jamesbond's Avatar
    Join Date
    Feb 2001
    Location
    The Netherlands
    Posts
    256
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    freakysid, I tried the 4th regex, but it doesn't work correctly.

    it blocks foo@bar
    but when you have >3 characters after @, the e-mail is not blocked.

    for example:

    foo@bar1 is accepted
    foo@barbar is accepted

  16. #41
    SitePoint Addict jamesbond's Avatar
    Join Date
    Feb 2001
    Location
    The Netherlands
    Posts
    256
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    freakysid, I ran your script after adding 3 more e-mail addresses, number 18,19,20.

    Still haven't found the perfect e-mail validator


    1: 1 : 1 : 1 : 1: john@domain.com
    2: 1 : 1 : 1 : 1: john.smith@domain.com
    3: 1 : 1 : 1 : 1: john.smith@domain.netcom.com
    4: 1 : 1 : 1 : 1: john.smith@domain.co.uk
    5: 1 : 1 : 1 : 1: john.smith@domain.com.au
    6: 1 : 1 : 1 : 1: john.smith@domain.to
    7: 1 : 1 : 1 : 1: smith@subdomain.domain.to
    8: 1 : 1 : 1 : 1: smith@domain.to
    9: 1 : 1 : 1 : 1: john@some-domain.com
    10: 1 : 1 : 1 : 1: christopher.padfield@new.ox.ac.uk
    11: 1 : 1 : 0 : 0: john_smith@some_domain.com
    12: 1 : 1 : 1 : 1: john_smith@some-domain.com
    13: 1 : 0 : 0 : 0: john@domain....com
    14: 1 : 1 : 0 : 0: john_smith@_domain.tld
    15: 1 : 1 : 0 : 0: smith@_subdomain.domain.tld
    16: 1 : 1 : 0 : 0: smith@sub_domain.domain.tld
    17: 0 : 1 : 0 : 1: tom.o'leary@foo.bar
    18: 1 : 0 : 0 : 1: foo@foobar
    19: 0 : 1 : 0 : 1: foo @bar.tld
    20: 0 : 0 : 0 : 1: @bar.tld

  17. #42
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Oh my, this thread is still alive! I have been meaning to correct and error in here for ages.

    Regex 4 (the one I am using) has an error in it above. It should be
    PHP Code:
    eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3}$"$e); 
    Note that I had not escaped the period before the TLD/country code bit toward the end.

    However, this regex, I believe will still pass Jamesbond's test number 19 (a whitespace in the username part).

    Peanuts domain names cannot have underscores AFAIK.

    Also, we now have two more numbers of characters to test for in the TLD/Country Code suffix:

    .museum (6 chars)
    .info (4 chars)

    So I guess the regex should be:
    PHP Code:
    eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*\\.[a-z]{2,3,4,6}$"$e); 

  18. #43
    SitePoint Addict jamesbond's Avatar
    Join Date
    Feb 2001
    Location
    The Netherlands
    Posts
    256
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Ok, I played around with another regex, I came up with this:

    eregi("^[a-z0-9]+([^[:space:]]?[a-z0-9])+@[a-z0-9]+([-_\.]?[a-z0-9])+\.[a-z]{2,6}$", $e)
    The results are displayed in the last column.

    The other column displays the results of :
    eregi("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,6}$", $e)


    1: 1: 1: john@domain.com
    2: 1: 1: john.smith@domain.com
    3: 1: 1: john.smith@domain.netcom.com
    4: 1: 1: john.smith@domain.co.uk
    5: 1: 1: john.smith@domain.com.au
    6: 1: 1: john.smith@domain.to
    7: 1: 1: smith@subdomain.domain.to
    8: 1: 1: smith@domain.to
    9: 1: 1: john@some-domain.com
    10: 1: 1: christopher.padfield@new.ox.ac.uk
    11: 0: 1: john_smith@some_domain.com
    12: 1: 1: john_smith@some-domain.com
    13: 0: 0: john@domain....com
    14: 0: 0: john_smith@_domain.tld
    15: 0: 0: smith@_subdomain.domain.tld
    16: 0: 1: smith@sub_domain.domain.tld
    17: 1: 1: tom.o'leary@foo.bar
    18: 1: 1: foo=bar@bar.tld
    19: 1: 1: foo&bar@bar.tld
    20: 0: 0: foo@barbarbar
    21: 1: 0: foo @bar.tld
    22: 1: 0: @bar.tld
    23: 1: 1: foo@bar.info
    24: 1: 1: foo@bar.museum

    number 16 should pass, since afaik it is possible to use underscores in subdomains (with wildcard DNS at least)

    number 11 shouldn't but I haven't been able to figure out how to pass underscores in subdomains while blocking underscores in domains.
    So if anyone knows how to do that i would be very grateful

    trim($email) should be used to remove leading and trailing whitespaces.

    To deal with the embedded whitespaces in usernames I used [:space:]in the regex.
    Last edited by jamesbond; Dec 7, 2001 at 07:49.

  19. #44
    SitePoint Addict AbelaJohnB's Avatar
    Join Date
    Oct 2001
    Location
    Eureka, CA. USA
    Posts
    250
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    So, did we settle on anything yet?



    If so, can someone write it up into a function for the rest of us






    Later
    John B. Abela
    www.JohnAbela.Com

  20. #45
    Custom User Title v1.0 FireFly's Avatar
    Join Date
    Aug 2001
    Posts
    363
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This is the function I use, using jamesbond's regex:
    PHP Code:
    function valEmail($address) {
        if (
    eregi("^[a-z0-9]+([^[:space:]]?[a-z0-9])+@[a-z0-9]+([-_\\.]?[a-z0-9])+\\.[a-z]{2,6}$"$address)) {
            return 
    1;
        } else {
            return 
    0;
        }    

    returns 1 if address is ok, or 0 if address is invalid.

    Fixing it a tad..
    Last edited by FireFly; Dec 12, 2001 at 06:35.

  21. #46
    ********* Callithumpian silver trophy freakysid's Avatar
    Join Date
    Jun 2000
    Location
    Sydney, Australia
    Posts
    3,798
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    One of the problems with posting regex into these forums is that you need to escape your escape characters - otherwise vBulletin does what any good parser does, and takes them out and treats the next character as a literal.

    For example, I have a suspicion that in the post above, the full stops (periods) should be escaped. I have contacted FireFly and asked for clarification.

  22. #47
    Custom User Title v1.0 FireFly's Avatar
    Join Date
    Aug 2001
    Posts
    363
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    freakysid was right, I did have 2 slashes missing in my function (they were removed by vB).
    I have it fixed now, and it's the way it should be.

    The regex itself is by jamesbond if you didn't understand, I just put it in a function because AbelaJohnB asked for one.

  23. #48
    Mlle. Ledoyen silver trophy seanf's Avatar
    Join Date
    Jan 2001
    Location
    UK
    Posts
    7,168
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Post your regex in code tags and you should not have any problems

    Sean
    Harry Potter

    -- You lived inside my world so softly
    -- Protected only by the kindness of your nature

  24. #49
    SitePoint Enthusiast z00om's Avatar
    Join Date
    Dec 2001
    Location
    California
    Posts
    86
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    This should do quite nicely for most people:

    PHP Code:
    function checkEmail($email) {
    if (!
    eregi("("^[^@]*@[0-9a-z]([-.]?[0-9a-z])*\.[a-z]{2,3,4,6}$", $email$regs)) { 
        echo "
    ErrorYour e-mail address ($emailis NOT valid.\\\n";
        return false;
    } else {
        if (!gethostbyname(
    $regs[2]) == $regs[2] || !gethostbyaddress($regs[2]) == $regs[2]) {
            echo "
    ErrorCould not find host \\\"$regs[2]\".\\n";
            return 
    false;
        } else {
            return 
    true;
        }
    }

    that also checks to see if they put in like "foo@bakjgbdhgbdjdsbgdbgdbgjdbgjhbfjdbsf4u3ygfbhbjhvb4gvbjbTHISISNOTREAL.com"

    'cause its not a real domain.. so it wouldn't work!
    (NOTE: IDEA FROM PHP.NET)
    Last edited by z00om; Mar 3, 2002 at 05:02.
    [z00om : home]
    [z00om@hotmail.com]
    [z00om : aim]
    [77968493 : icq]

  25. #50
    Dumb PHP codin' cat
    Join Date
    Aug 2000
    Location
    San Diego, CA
    Posts
    5,460
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Where do I start. Use preg instead of ereg. There is a parse error on your eregi line. There is a parse error in

    PHP Code:
    echo "Error: Could not find host "$regs[2]\".\n"
    Its gethostbyaddr() not gethostbyaddress()

    Did you test it before posting?

    Those functions (gethostbyname and gethostbyaddr) are so ineffecient, I would not rely on them, They are completely reliant on your DNS server.

    I couldn't even get the eregi part of your function to work. I would instead try this.

    Code:
    function checkEmail($email) {
    	$emailCheck = false;
    	if(preg_match("/^([A-Z0-9\.\-_]+)@([A-Z0-9\.\-_]+)?([\.]{1})([A-Z0-9\-_]{2,3})$/i", 
    $email, $matches)) {
    		$emailCheck = true;
    		}
    	return $emailCheck;
    	}
    
    print checkEmail('freddy.rules@foobar.com') ? 'Email Good' : 'Email Bad';
    It worked with

    freddy.rules@foobar.com
    freddyrules@foobar.com
    freddy_rules@foobar.com
    freddy-rules@foobar.com
    freddyrules@foobar.com.org
    freddyrules@foobar.com.co.gov
    freddyrules@foo_bar.com
    freddyrules@foo-bar.com


    Which I think covers most of them.
    Please don't PM me with questions.
    Use the forums, that is what they are here for.


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •