gpt4 book ai didi

php - 如何从 php 将唯一的确认码插入到电子邮件中

转载 作者:行者123 更新时间:2023-11-29 22:08:29 25 4
gpt4 key购买 nike

我和学生有一个 MySQL 数据库。我有选择其中部分或全部并向所选内容发送电子邮件的功能。

我还可以将电子邮件保存在数据库的表中。我现在需要一种方法,当我向选定的学生发送电子邮件时,在电子邮件正文中插入一个唯一的链接,当他们点击该链接时,可以在后端将其状态从“批准”更改为“确认” ,同时他们会看到一条消息,表明他们的请求已得到确认。

我现在用于发送邮件并将其插入数据库的代码是这样的:

<?php
session_start();
$page_name = 'Send Emails';
require_once('header.php');
if(!empty($_POST['send'])){
$id_mail= "";
foreach ($_POST['selected'] as $key => $value) {
echo "$key - $value <br>";
$id_mail .= "$value, ";
}
$id_mail= substr($id_mail, 0, -2);
}
if(!empty($_POST['Send2'])){
$mail= mysqli_query($conn, "SELECT student_id, mail FROM students WHERE student_id IN($_POST[id_mail])");
echo "SELECT student_id, mail FROM students WHERE student_id IN($_POST[id_mail]) ";
while ($row_mail = mysqli_fetch_assoc($mail)) {
echo "$row_mail[mail] ";
$to = $row_mail['mail'];
$subject = $_POST['head'];
$message = $_POST['body'];
$headers = 'From: code-week@example.com' . "\r\n" .
'Please do not reply to this message' . "\r\n" .
'X-Mailer: PHP/' . phpversion();
mail($to, $subject, $message, $headers);
$sent_mails= mysqli_query($conn, "INSERT INTO sent_mails (id_st, mail_head, content) VALUES ('$_POST[id_mail]', '$subject', '$message') ");
if (mysqli_query($conn, $sent_mails)){
echo "Success";
} else {
echo "Error ". $sent_mails . "<br/>" . mysqli_error($conn);
}
}
}
mysqli_close($conn);
?>
<form name='mail2' method='post' action='send_email.php'><br/>
<input type="hidden" name="id_mail" value="<?php echo $id_mail; ?>">
<br/>

<input type='text' name='head' placeholder='header'>
<br/>
<br/>

<textarea name='body' rows="4" cols="50" placeholder='body'></textarea><br/>
<br/>
<input class='btn btn-danger'type='submit' name="Send2" value='Send'>
</form>

最佳答案

您想要在电子邮件中添加一个链接,以便收件人证明这是他的电子邮件地址(类似于 http://www.example.com/confirmEmailAddress?randomCode=abcdef) , 正确的?那么,如果您还在链接中添加了接收者的电子邮件地址或其唯一的数据库 ID,则该随机代码不必是唯一的:http://www.example.com/confirmEmailAddress?NotNecessarilyUniqueRandomCode=abcdef&email=john.doe@example.com然后,您只需根据这两列检查数据库即可。

关于php - 如何从 php 将唯一的确认码插入到电子邮件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31917166/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com