【发布时间】:2012-12-26 15:40:11
【问题描述】:
我有一个 php 脚本 :) 基本上,用户注册会收到一封电子邮件并单击激活链接。当他们点击激活链接时,它会将他们带到 activate.php 页面,一切都完成了。 他们收到的电子邮件中的链接问题看起来像
您好用户名,现在这是您的登录信息:
用户名:computing
密码:computing
下一步是点击此链接激活您的帐户:点击这里
您可以在上面的最后一行中看到,该网站的名称已连接到该链接应该将它们带到的 activate.php 页面。所以我猜我的错误还不错,我只是缺少正斜杠或类似的东西。 无论如何,我认为问题来自下面的代码。我尽量保持代码简短。
<?
// send email
$myname = $contact_name;
$myemail = $contact_email;
$contactname = $signup[fname];
$contactemail = $signup[email];
$message = "Hello ".$signup[fname].",<BR>".
"Get ready to start getting the hits you deserve. Now here is your login info:<BR> <BR>".
"username: ".$signup[username]."<BR>".
"password: ".$signup[password]."<BR><BR>".
"<B>The next step is to click on this link to activate your account:<a href=".$siteUrl."activate.php?username=".$signup[username].">CLICK HERE</a></b>";
$subject = $title;
$headers .= "MIME-Version: 1.0\r\n";
$headers .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers .= "From: ".$myname." <".$myemail.">\r\n";
$headers .= "To: ".$contactemail." <".$contactemail.">\r\n";
$headers .= "Reply-To: ".$myname." <".$myemail.">\r\n";
$headers .= "X-Priority: 1\r\n";
$headers .= "X-MSMail-Priority: High\r\n";
$headers .= "X-Mailer: Just My Server";
mail($contactemail, $subject, $message, $headers);
$signup[username] = "";
?>
如果有人能对此有所了解,那就太好了。以为我会提到我正在使用 PHP 5.3 我认为我自己的问题来自 href=".$siteUrl."activate.php?username=".$signup[username].">点击这里"; $主题 = $标题;
但我需要知道的人提供一些有效的输入 :)。
【问题讨论】:
-
为了安全起见,您是否对密码进行哈希处理,您也可能不想发送明文密码。您可能想要添加令牌激活,例如:example.com/activate.php/?token=dhwudf983nsdfwuen&user=nwenwsli2nf82ndj 并检查用户和令牌,然后您就会知道那是实际点击链接的用户
-
感谢您的意见,稍后我将为此创建一个单独的线程。因为就像你说的安全方面很蹩脚。因此,您可以随意加入。问候尼日。
标签: php email activation