0

$_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');
4

3 に答える 3

0

email addressからを取得Databaseしないと、それはできません。

またはそうでなければ

ユーザーのログインが成功したら、もう 1 つのセッション変数を設定できます

$_SESSION['email'] = 'abc@example.com'
于 2013-04-10T12:52:23.447 に答える
0

このような電子メールを取得するには、ユーザーIDに基づいて選択クエリを作成する必要があります

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

次に、その電子メールを使用してメール機能を実行します

于 2013-04-10T12:50:37.530 に答える
0

ユーザー オブジェクトから電子メール アドレスを取得する必要があります。

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

このコードは単なる例であり、ユーザーオブジェクトがどのように機能するかによって異なります。持っていない場合は、自分でユーザー オブジェクトを作成することをお勧めします。

于 2013-04-10T12:50:40.763 に答える