マスター PHP と PHPMAILER: 電子メール送信の購読解除機能を実装するにはどうすればよいですか?
電子メールの普及により、多くの企業や個人がプロモーションやマーケティングに電子メールを使用しています。ただし、受信者が受信したメールに興味がなかったり、受信したメールが多すぎると感じる場合もあります。ユーザーにより良いサービスを提供するには、ユーザーがメールの購読を簡単に解除できる機能を提供する必要があります。今回はPHPとPHPMailerを使ってメール送信の配信停止機能を実装する方法を紹介します。
まず、ユーザーのサブスクリプション ステータスを保存するユーザー データベースが必要です。 MySQL データベースを使用して、ユーザーの ID、電子メール アドレス、サブスクリプション ステータスのフィールドを含む「subscribers」という名前のデータ テーブルを作成できます。以下は、テーブルを作成するための簡単な SQL ステートメントです:
CREATE TABLE subscribers (
id INT(11) AUTO_INCREMENT PRIMARY KEY, email VARCHAR(255) NOT NULL, subscribed TINYINT(1) NOT NULL DEFAULT '1'
);
次に、ユーザーが購読解除できるように、購読解除ページを作成する必要があります。電子メール アドレスを入力し、電子メールの配信を停止するかどうかを選択します。このページでは、HTML フォームを使用してユーザー入力を収集できます。簡単な例を次に示します。
<form action="unsubscribe.php" method="post"> <label for="email">邮箱地址:</label> <input type="email" id="email" name="email" required> <label for="unsubscribe">退订邮件:</label> <input type="checkbox" id="unsubscribe" name="unsubscribe" value="1"> <input type="submit" value="提交"> </form>
購読解除ページでは、ユーザーの入力を処理する PHP スクリプトを作成する必要があります。まず、データベースに接続し、ユーザーが入力した電子メール アドレスを取得し、POST リクエストから選択内容を購読解除する必要があります。簡単な例を次に示します。
<?php // 连接到数据库 $host = "localhost"; $username = "your_username"; $password = "your_password"; $database = "your_database"; $connection = mysqli_connect($host, $username, $password, $database); // 获取用户输入 $email = $_POST['email']; $unsubscribe = isset($_POST['unsubscribe']) ? 1 : 0; // 更新订阅状态 $query = "UPDATE subscribers SET subscribed = $unsubscribe WHERE email = '$email'"; mysqli_query($connection, $query); // 关闭数据库连接 mysqli_close($connection); ?>
ユーザーが購読解除ページでフォームを送信すると、データベース内の対応する電子メール アドレスの購読ステータスを更新できます。ユーザーが電子メールの購読を解除することを選択した場合、購読ステータスは 0 に更新され、ユーザーが電子メールの受信を希望しないことを示します。ユーザーが電子メールの購読を中止することを選択しなかった場合は、購読ステータスを 1 に維持します。ユーザーが電子メールを受信し続けること。
次に、電子メール送信コードを変更して、電子メールを送信する前にユーザーのサブスクリプション ステータスを確認する必要があります。 PHPMailer を使用して電子メールを送信するコードでは、電子メールを送信する前に次のチェックを追加できます。
<?php // 连接到数据库 $host = "localhost"; $username = "your_username"; $password = "your_password"; $database = "your_database"; $connection = mysqli_connect($host, $username, $password, $database); // 获取收件人的邮箱地址 $to = "receiver_email@example.com"; // 查询收件人的订阅状态 $query = "SELECT subscribed FROM subscribers WHERE email = '$to'"; $result = mysqli_query($connection, $query); $row = mysqli_fetch_assoc($result); // 如果收件人已经退订邮件,不发送邮件 if ($row['subscribed'] == 0) { exit; } // 发送邮件的代码 // ... ?>
電子メールを送信する前に受信者の購読ステータスをクエリすることで、購読を解除した人に電子メールを送信することを避けることができます。ユーザー。
まとめると、PHP と PHPMailer を組み合わせることで、メール送信の配信停止機能を簡単に実装できます。まず、ユーザーの購読ステータスを保存するユーザー データベースが必要です。次に、ユーザーが電子メール アドレスを入力して電子メールの購読を中止するかどうかを選択できるように購読中止ページを作成します。最後に、電子メールを送信するためのコードを変更します。メッセージを送信する前に受信者の購読ステータスを確認します。このようなプロセスを通じて、ユーザーの意向を尊重し、より良いサービスを提供することができます。
以上、PHPとPHPMailerを使ってメール送信の配信停止機能を実装する方法の紹介でした。
以上がマスター PHP と PHPMAILER: メール送信の配信停止機能を実装するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。