在验证电子邮件中显示表单中的用户输入

时间:2013-02-26 11:47:48

标签: php

我的注册表格有点问题:当我发送验证邮件给用户激活帐户时,我试图将UserID字段显示为用户输入的。 目前,我只需要在验证邮件中显示用户提供的用户ID和随机生成的 PIN。请允许任何人为我更正,因为PIN在电子邮件中正确显示,但不是UserID。

以下是我的代码:

<div id="wrap">
        <!-- start PHP code -->
        <?php

            mysql_connect("localhost", "root", "") or die(mysql_error()); // Connect to database server(localhost) with root .
            mysql_select_db("registrations") or die(mysql_error()); // Select registration database.

            $email="";

            if( isset($_POST['fullname']) // Is the name field being posted; it does not matter whether it's empty or filled.  
    && // This is the same as the AND in our statement; it allows you to check multiple statements.  
    !empty($_POST['fullname']) // Verify if the field name is not empty 
    AND isset($_POST['email']) // Is the email field being posted; it does not matter if it's empty or filled.  
    && // This is the same as the AND in our statement; it allows you to check multiple statements.  
    !empty($_POST['email']) ) // Verify if the field email is not empty   
      {

                $fullname = mysql_real_escape_string($_POST['fullname']);
                $email = mysql_real_escape_string($_POST['email']);

                }
                if(!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/", $email)){
                    // Return Error - Invalid Email
                    $msg = 'The email you have entered is invalid, please try again.';
                }else{
                    // Return Success - Valid Email
                    $msg = 'Your account has been created, <br /> please verify it by clicking the activation link that has been send to your email.';
                    }

                    $hash = md5( rand(0,1000) ); // Generate random 32 character hash and assign it to a local variable.

                    $PIN = rand(1000,5000); // Generate random number between 1000 and 5000 and assign it to a local variable.

$to      = $email; // Send email to our user  
$subject = 'Signup | Verification of your BFS Account'; // Give the email a subject  
$message = 'Thanks for signing up! 
Your account has been created, you can login with the following credentials after you have activated your account by clicking the url below. 
------------------------ 
USER ID: '.$UserID.' // **THIS IS WHERE I HAVE THE PROBLEM DISPLAYING USER ID**
PIN: '.$PIN.' 
------------------------ 
Please click this link to activate your account: 
http://www.website.com/verify.php?email='.$email.'&hash='.$hash.' 
'; // Our message above including the link  
$headers = 'From:noreply@website.com' . "\r\n"; // Set from headers  
mail($to, $subject, $message, $headers); // Send our email  

        ?>
        <!-- stop PHP Code -->           

    </div>

1 个答案:

答案 0 :(得分:1)

您没有为$UserID分配任何内容。作为一个疯狂的猜测你可能需要:

$UserID = $_POST['userid']; //  or
$UserID = $_POST['user_id'];

P.S请处理您的代码缩进。