簡體   English   中英

如何使用$ _SESSION [user_id]變量從用戶表中提取電子郵件地址並將電子郵件發送到該地址?

[英]How to pull email address form user table and send email to that address using $_SESSION[user_id] variable?

如何使用$_SESSION[user_id]變量從用戶表中提取電子郵件地址並將電子郵件發送到該地址?

在付款過程結束時,我想向用戶發送確認電子郵件。 用戶ID存儲在會話中,我想向存儲在用戶表中的電子郵件地址發送確認。

<?php
$to = "recipient@example.com";
$subject = "Hi!";
$body = "Hi,\n\nHow are you?";
if (mail($to, $subject, $body)) {
echo("<p>Message successfully sent!</p>");
} else {
echo("<p>Message delivery failed...</p>");
}
?>

如何使用查詢插入與$ _SESSION [user_id]變量關聯的適當電子郵件?

$q = "SELECT email from users where id='".$_SESSION['user_id']."'";
$r = mysqli_query ($dbc, $q);
$to = "email";
$subject = "Confirmation";
$body = "Hi,\n\nConfirmation?";
if (mail($to, $subject, $body)) {
echo("<p>Message successfully sent!</p>");
} else {
echo("<p>Message delivery failed...</p>");
}

我已成功發送信息電子郵件,但電子郵件從未到達...在注冊過程中,我使用以下方式發送了電子郵件:

$body = "Thank you for registering at <...>. Welcome to digital world of knowledge.";
mail ($_POST['email'], 'Registration Confirmation', $body, 'From: admin@ttt.com');

您必須根據用戶ID編寫一個選擇查詢,以獲取類似這樣的電子郵件

$sql = "SELECT email from user where user_id='".$_SESSION[user_id]."'";

然后使用該電子郵件執行郵件功能

您需要從用戶對象獲取電子郵件地址:

$user  = User::getByID($_SESSION[user_id]);
$email = $user->getEmail();

此代碼只是示例性的,它取決於您的用戶對象的工作方式。 如果您沒有該對象,那么我的答案是建議您創建一個用戶對象。

沒有從Database獲取email address ,這是不可能的,

要不然

用戶登錄成功后,您可以再設置一個會話變量

$_SESSION['email'] = 'abc@example.com'

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM