我的注册表格有点问题:当我发送验证邮件给用户激活帐户时,我试图将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>
答案 0 :(得分:1)
您没有为$UserID
分配任何内容。作为一个疯狂的猜测你可能需要:
$UserID = $_POST['userid']; // or
$UserID = $_POST['user_id'];
P.S请处理您的代码缩进。