【问题标题】:Show the user email address automatically in a form, when the user will click in a html email template当用户单击 html 电子邮件模板时,自动在表单中显示用户电子邮件地址
【发布时间】:2015-08-10 07:09:25
【问题描述】:

你好 StackOverflowers,

现在我有一个按钮,如果我按下该按钮,一封 HTML 电子邮件将发送到 50 个电子邮件地址。

我正在使用 PHP 邮件程序发送此邮件,电子邮件地址存储在数据库中:我将发送 template.html 作为正文消息,他们将在其中看到一封电子邮件,他们必须单击“确认他们的电子邮件地址。”但是我希望如果每个用户都单击“单击此处确认”链接,则会打开一个链接/页面,但我希望已经在该页面中显示电子邮件地址的值,以便自动填写用户的电子邮件地址,因此他们只需输入密码并按确认。

因此,如果他们按下“现在单击此处确认”,他们将看到此页面:http://jsfiddle.net/ry8g20e6/1/,其中包含他们的电子邮件地址,因此他们只需填写密码,然后点击确认

这是从数据库发送给用户的php代码

if( isset($_POST['button_pressed']) )
{

mysql_connect("localhost","dbuser","dbpass");
mysql_select_db("dbname");

$rs=mysql_query("select * FROM test");

// Do while loop to send email.
while($row=mysql_fetch_assoc($rs))


    $to=$row['email'];

    $subject = "Confirm your account"; 
    $message.= file_get_contents("template.html") ;

这意味着他们将收到带有 template.html 作为正文的电子邮件。

所以 template.html 包含此消息:

您好用户,单击此处确认您的电子邮件地址(当他们单击时,他们将看到此页面以确认他们的电子邮件地址:http://jsfiddle.net/ry8g20e6/1/)但是我该怎么做,他们的电子邮件地址将自动显示在电子邮件中价值?这样他们只需输入密码并点击发送?

所以我希望如果用户将收到带有 (template.html) 文件的电子邮件,并且如果他们单击链接:确认您的电子邮件地址,那么将打开一个新页面/(自定义表单):@ 987654323@ 并且他的电子邮件地址的值将已经添加到表单中??

<p>Email: 
  <input name="emailadress" type="text" id="emailadress" value="theuseremailadres@here.com>
</p>
<p>Password:
  <input type="text" name="password" id="password">
  <input type="button" name="sbumit" id="submit" value="Confirm">

所以实际上我如果用户点击“点击这里确认”这个页面将被打开,并且希望用户电子邮件地址已经显示在电子邮件地址输入的值中

template.html 将包含如下内容:

<body>
<p>Hello User, Click <a href="confirm.php">here</a> to confirm your email adress</p>
</body>

更新

所以我现在有了这个:

index.php:

$rs=mysql_query("select * FROM test");

// Do while loop to send email.
while($row=mysql_fetch_assoc($rs))


    $to=$row['email'];

    $subject = "Hello This is a Test"; 
    $message.= file_get_contents("template.html") ;

模板.html:

<body>
<p>Click <a href="confirm.php?email={$to}">here</a> to confirm your email adress</p>
</body>

确认.php:

<p>Email: 
  <input name="email" type="text" id="email" value="" <?php $_GET['email'] ?> >
</p>
<p>Password:
  <input type="text" name="password" id="password">
  <input type="button" name="sbumit" id="submit" value="Confirm">

我不知道问题出在哪里,如果我发送测试电子邮件,我将收到 template.html 作为消息.. 如果我点击点击这里.. Confirm.php 将被打开,但电子邮件地址不会自动出现在“电子邮件”字段中。有人可以帮我解决这个问题吗?

【问题讨论】:

  • 邮件中的链接应该有一个 id- 与数据库中的用户邮件相匹配,然后您可以在登录页面上查看并填写详细信息。
  • 旁注:一次发送 5k 封电子邮件时要小心
  • @Dagon 感谢您的留言,@wink 您的链接无效

标签: php html mysql email


【解决方案1】:

你可以做类似的事情

$to = $row['email'];
ob_start();
include "email_template.php";
$message = ob_get_clean();

email_template.php 类似于

<body>
<p>Click <a href="confirm.php?email={$to}">here</a> to confirm your email adress</p>
</body>

或者我完全错了,你的帖子很难理解。

编辑:

接下来,confirm.php 可以通过$_GET['email'] 访问电子邮件。只需将输入字段的值替换为电子邮件即可。

【讨论】:

  • 谢谢你的回答,我很抱歉我的难题,我只是希望收到电子邮件的用户按下链接进行确认,他们会点击“点击这里确认“如果他们按下将通过表单打开链接,但我想已经在表单中包含用户电子邮件地址,这样他们只需输入密码并点击确认,就像这样:@987654321 @谢谢你的帮助,我很感激!
猜你喜欢
  • 2016-07-10
  • 2022-01-19
  • 1970-01-01
  • 1970-01-01
  • 2015-08-30
  • 1970-01-01
  • 1970-01-01
  • 2017-09-08
  • 2015-06-10
相关资源
最近更新 更多