For whatever reason I can't pass the variable $email into the mail function to make it send me an email..can anyone help? Here is my code <?php require("config.php"); require("functions.php"); //echo some styles to spice it up... echo " <style> body { background: #131313; font-family: Verdana, Arial; font-weight: bold; font-size: 9px; color: #FFFFFF; } .register_box { border: 1px solid #323232; background: #202020; font-family: Verdana, Arial; font-weight: bold; font-size: 9px; color: #FFFFFF; } </style> "; switch($_GET['action']) { case "new": //-------------------------------------- //[New Registration] //-------------------------------------- if(!isset($_POST['register'])) { echo " <form action='register.php?action=new' method='POST'> Username: <br /> <input type='text' name='username' class='register_box'> <br /> Email: <br /> <input type='text' name='email' class='register_box'> <br /> Password: <br /> <input type='password' name='password' class='register_box'> <br /> <input type='submit' name='register' value='New Registration!' class='register_box'> </form> "; } elseif(isset($_POST['register'])) { $username = mysql_real_escape_string($_POST['username']); $password = mysql_real_escape_string($_POST['password']); $email = mysql_real_escape_string($_POST['email']); $activation_code = generateCode(25); $userq = "SELECT username FROM user_system WHERE username = '$username' LIMIT 1"; $emailq = "SELECT email FROM user_system WHERE email = '$email' LIMIT 1"; //put errors into an array $errors = array(); if(empty($username)) { $errors[] = "The username field was blank! <br />"; } if(mysql_num_rows(mysql_query($userq)) > 0) { $errors[] = "The username given is already in use! Please try another one! <br />"; } if(empty($password)) { $errors[] = "The password field was blank! <br />"; } if(empty($email)) { $errors[] = "The email field was blank! <br />"; } if(mysql_num_rows(mysql_query($emailq)) > 0) { $errors[] = "The email given is already in use! Please try another one! <br />"; } if(count($errors) > 0) { foreach($errors as $err) { echo $err; } } else { $sqlq = "INSERT INTO user_system (username, password, email, is_activated, activation_code)"; $sqlq .= "VALUES ('$username', '".md5($password)."', '$email', '0', '$activation_code')"; mysql_query($sqlq) or die(mysql_error()); echo "$email"; <--- Its being passed down... echo "Thanks for registering! You will recieve an email shortly containing your validation code, and a link to activate your account!"; mail($email, "New Registration, www.sitename.ca", " <---- won't pick itup. Thanks for registering on SITE NAME. Here are your login details: Username: ".$username." Password: ".$password." In order to login and gain full access, you must validate your account. Click here to validate: http://www.sitename.ca/login/register.php?action=activate&user=".$username."&code=".$activation_code." Thanks! [Webmaster] "); } } break; case "activate": //-------------------------------------- //[Activate Account] //-------------------------------------- if(isset($_GET['user']) && isset($_GET['code'])) { $username = mysql_real_escape_string($_GET['user']); if(mysql_num_rows(mysql_query("SELECT id FROM user_system WHERE username = '$username'")) == 0) { echo "That username is not in the database!"; } else { $activate_query = "SELECT is_activated FROM user_system WHERE username = '$username'"; $is_already_activated = mysql_fetch_object(mysql_query($activate_query)) or die(mysql_error()); if($is_already_activated->is_activated == 1) { echo "This user is already activated!"; } else { $code = mysql_real_escape_string($_GET['code']); $code_query = "SELECT activation_code FROM user_system WHERE username = '$username' LIMIT 1"; $check_code = mysql_fetch_object(mysql_query($code_query)) or die(mysql_error()); if($code == $check_code->activation_code) { $update = "UPDATE user_system SET is_activated = '1' WHERE username = '$username'"; mysql_query($update) or die(mysql_error()); echo "User $username has been activated! Thanks! You may now login!"; } else { echo "The activation code was wrong! Please try again!"; } } } } else { echo "No ID or user given to activate!"; } break; } ?> --------------------------------- The best gets better. See why everyone is raving about the All-new Yahoo! Mail.