インターネットの継続的な発展に伴い、電子メールは人々の日常生活に欠かせないものになりました。メールボックスは、受信トレイ、送信済みメール、スパムメールなどを簡単に管理できる一般的なメール管理ツールです。この記事では、PHPを使ってシステムメールボックス機能を実装する方法を詳しく紹介します。
1. データベース テーブルの作成
まず、電子メール関連の情報を保存するために、データベースに「emails」という名前のテーブルを作成する必要があります。次の SQL ステートメントを使用して作成できます:
CREATE TABLE emails
(
id
int(11) NOT NULL AUTO_INCREMENT,
送信者
varchar(255) NOT NULL,
recipient
varchar(255) NOT NULL,
subject
varchar(255) NOT NULL,
content
text NOT NULL,
date
datetime NOT NULL,
主キー (id
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
このテーブルには、ID、送信者、受信者、件名、内容、日付の 6 つのフィールドが含まれています。このうち、id はメールの一意の識別子、送信者と受信者は送信者と受信者のメールアドレス、件名はメールの件名、コンテンツはメールの本文、日付はメールの送信時刻を表します。
2. PHP コードを書く
次に、メールボックスの機能を実現するための PHP コードを書く必要があります。まず、データベースに接続する必要があります。次のコードを使用して接続できます:
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
// 接続の作成
$conn = new mysqli($servername, $username, $password, $dbname) ;
// 接続が成功したかどうかを確認します
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
?>
接続が成功したら、データベースから電子メール関連の情報を取得する SQL ステートメントを記述する必要があります。次のコードを使用してクエリを実行できます:
$sql = "SELECT * FROM email ORDER BY date DESC";
$result = $conn->query($ sql) ;
if ($result->num_rows > 0) {
// 输出数据 while($row = $result->fetch_assoc()) { echo "发件人:" . $row["sender"]. " 收件人:" . $row["recipient"]. " 主题:" . $row["subject"]. " 时间:" . $row["date"]. "<br>"; }
} else {
echo "还没有邮件!";
}
?>
このコードは、SELECT ステートメントを使用してデータベースから修飾された電子メール情報を取得し、それをブラウザーに 1 つずつ出力します。このうちORDER BY date DESCは送信時刻の逆順にソートすることを意味します。
次に、電子メール送信機能を実装するコードを記述する必要があります。次のコードを使用して記述できます。
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$sender = $_POST["sender"]; $recipient = $_POST["recipient"]; $subject = $_POST["subject"]; $content = $_POST["content"]; $date = date('Y-m-d H:i:s'); $sql = "INSERT INTO emails (sender, recipient, subject, content, date) VALUES ('$sender', '$recipient', '$subject', '$content', '$date')"; if ($conn->query($sql) === TRUE) { echo "邮件发送成功!"; } else { echo "邮件发送失败:" . $conn->error; }
}
? >
このコードは、INSERT ステートメントを使用して、新しい電子メール情報をデータベースに挿入します。ユーザーがフォームを送信した後、フォーム内の各フィールドの値を取得し、データベースに挿入します。挿入に成功した場合は「メール送信成功!」が出力され、挿入に失敗した場合はエラーメッセージが出力されます。
3. ユーザー インターフェイスの作成
最後に、ユーザーがメールボックスの機能を簡単に使用できるように、ユーザー インターフェイスを作成する必要があります。次の HTML コードを使用して記述できます:
<title>邮箱</title>
< ;body>
收件箱
query($sql); if ($result->num_rows > 0) { // 输出数据 while($row = $result->fetch_assoc()) { echo "发件人:" . $row["sender"]. " 收件人:" . $row["recipient"]. " 主题:" . $row["subject"]. " 时间:" . $row["date"]. "
"; } } else { echo "还没有邮件!"; } ?>
发送邮件