本電子賀卡系統分為三個階段:表單填寫、預覽確認、發送郵件。整合 PHP、MySQL、JavaScript 實現會員自動帶入資料、圖片選擇、背景音樂試聽、Cookie 防重複發送等功能。
表單採用 POST 送至 mailtocard.php,包含賀卡圖片單選、祝福文字輸入、背景音樂下拉選單與試聽按鈕、寄件人/收件人資料欄位。
透過判斷 $g_username 是否存在,決定顯示會員資料或輸入框:
<?php
if (strlen($g_username) > 1) {
// 已登入:從資料庫讀取 email、網址
$db = mysql_connect("localhost", "root", "");
$result = mysql_db_query("資料庫名", "select email, http from 資料表名 where username='$g_username'");
$row = mysql_fetch_array($result);
$bbs_email = $row['email'];
// 輸出隱藏欄位與顯示姓名、Email
} else {
// 未登入:顯示文字輸入框
}
?>
根據使用者選擇的圖片代碼(newyear、newyear2_2 等)對應顯示圖片,並帶入祝福文字、寄件人/收件人姓名。預覽頁包含「發送」與「關閉視窗」按鈕。
$mainurl = "https://lyjrich.oso.com.cn/card";
$dataurl = "$mainurl/store";
$userip = getenv("REMOTE_ADDR");
$daten = date("m月d日H點i分");
$roundno = date("mdHis");
$fileno = $roundno . ".html";
$fileurl = $dataurl . "/" . $fileno;
郵件包含賀卡連結、留言內容、發送時間、保存期限等資訊,使用 mail() 發送。
將賀卡內容寫入 $fileurl 對應的 HTML 檔案,供收件人隨時瀏覽。