Hi, i am trying to create a member login/authentication script to
automatically send newly signed up people an email with a confirmation link.
I am following a tutorial:

http://www.phpfreaks.com/tutorials/40/0.php

My form is located at:

http://www.tricia-marwick.co.uk/members/join_form.php

The script in question is as follows:

<?

include 'db.php';

// Define post fields into simple variables
$first_name = $_POST['first_name'];
$last_name = $_POST['last_name'];
$email_address = $_POST['email_address'];
$username = $_POST['username'];
$info = $_POST['info'];

/* Let's strip some slashes in case the user entered
any escaped characters. */

$first_name = stripslashes($first_name);
$last_name = stripslashes($last_name);
$email_address = stripslashes($email_address);
$username = stripslashes($username);
$info = stripslashes($info);

/* Let's do some checking and ensure that the user's email address or

username
 does not exist in the database */

 $sql_email_check = mysql_query("SELECT email_address FROM users WHERE

email_address='$email_address'");
 $sql_username_check = mysql_query("SELECT username FROM users WHERE

username='$username'");

 $email_check = mysql_num_rows($sql_email_check);
 $username_check = mysql_num_rows($sql_username_check);

 if(($email_check > 0) || ($username_check > 0)){
  echo "Please fix the following errors: <br />";
  if($email_check > 0){
   echo "<strong>Your email address has already been used

by another member in our database. Please submit a different Email

address!<br />";
   unset($email_address);
  }
  if($username_check > 0){
   echo "The username you have selected has already been

used by another member in our database. Please choose a different

Username!<br />";
   unset($username);
  }
  include 'join_form.php'; // Show the form again!
  exit();  // exit the script so that we do not create this

account!
 }

/* Everything has passed both error checks that we have done.
It's time to create the account! */

/* Random Password generator.
http://www.phpfreaks.com/quickcode/Random_Password_Generator/56.php

We'll generate a random password for the
user and encrypt it, email it and then enter it into the db.
*/

function makeRandomPassword() {
  $salt = "abchefghjkmnpqrstuvwxyz0123456789";
  srand((double)microtime()*1000000);
   $i = 0;
   while ($i <= 7) {
      $num = rand() % 33;
      $tmp = substr($salt, $num, 1);
      $pass = $pass . $tmp;
      $i++;
   }
   return $pass;
}

$random_password = makeRandomPassword();

$db_password = md5($random_password);

// Enter info into the Database.
$info2 = htmlspecialchars($info);
$sql = mysql_query("INSERT INTO users (first_name, last_name,

email_address, username, password, info, signup_date)
  VALUES('$first_name', '$last_name', '$email_address',

'$username', '$db_password', '$info2', now())") or die (mysql_error());

if(!$sql){
 echo 'There has been an error creating your account. Please

contact the webmaster.';
} else {
 $userid = mysql_insert_id();
 // Let's mail the user!
 $subject = "Your Membership at RewardPoints!";
 $message = "Dear $first_name $last_name,
 Thank you for registering at our website,

http://www.rewardpoints.net!

 You are two steps away from logging in and accessing our

exclusive members area.

 To activate your membership, please click here:

http://www.tricia-marwick.co.uk/members/activate.php?id=$userid&code=$d

b_password

 Once you activate your memebership, you will be able to login

with the following information:
 Username: $username
 Password: $random_password

 Thanks!
 Steven Marwick

 This is an automated response, please do not reply!";

 mail($email_address, $subject, $message, "From: Steven

Marwick<[EMAIL PROTECTED]>\nX-Mailer: PHP/" . phpversion());
 echo 'Your membership information has been mailed to your email

address! Please check it and follow the directions!';
}

?>



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to