0

構築中の同窓会サイトのメーリング リストを作成する必要があります。以下は、メーリングリストが機能するのに理想的な方法です。

ユーザー
ユーザーは Web サイトにアクセスし、自分の電子メール アドレス (および場合によっては名/姓) をフィールドに入力し、[購読] ボタンをクリックして、確認メッセージを受け取ります (ポップアップ、リダイレクト、または電子メールのいずれかを介して)。メッセージ)。

サイト マネージャー
購読に成功した各電子メール アドレス (および名前) は、サーバー上のテキスト ドキュメントまたはグループの電子メール アドレスにコンパイルされます。マネージャーは、管理者パスワードでログインして、サブスクライバー リスト (例: http://justincross.net/stuff/join2.php )に一括メールを送信するか、管理者が G- からリストにメールを送信することができます。メールアカウント。

これを効果的に行う方法を知っている人はいますか?チュートリアル/テンプレートを何日も検索しましたが、試したもののほとんどは、壊れているか、mySQL を使用しているようです (これはしたくありません)。

前もって感謝します!

4

1 に答える 1

1

データベースの方法は、確かに最良の方法です。テキストファイルのアプローチを使用する場合は、次のようなものをお勧めします。

ファイルへのデータの挿入

$email = "the email";
$firstName = "the first name";
$lastName = "the last name";

$new_line = "$email|$firstName|$lastName\n"; // |  could be other character

$file = fopen("subscribers.txt", "a");
fputs($file, $new_line);
fclose($file);

データの読み取りと解析

$subscribers = array();

$handle = @fopen("subscribers.txt", "r");
if ($handle) {
    while (!feof($handle)) {
        $line = fgets($handle, 4096);

        //parsing the line
        $ar = explode('|', $line);

        //$ar[0] holds the email
        if(key_exists(0, $ar)){
          $email = $ar[0];
        }else{
          $email= '';
        }

        //$ar[1] holds the first name
        if(key_exists(1, $ar)){
          $firstName = $ar[1];
        }else{
          $firstName = '';
        }

        //$ar[2] holds the last name
        if(key_exists(2, $ar)){
          $lastName = $ar[2];
        }else{
          $lastName = '';
        }

        $temp = array(
          'email' => $email,
          'firstName' => $firstName,
          'lastName' => $lastName
        );

        $subscribers[] = $temp;
        //

    }
    fclose($handle);
}

サブスクライバーをループし、関数を使用してメールを送信するため

foreach($subscribers as $subscriber){
    //the email
    $subscriber['email'];

    //the firstname
    $subscriber['firstName'];

    //the lastname
    $subscriber['lastName'];
}
于 2010-09-29T14:51:56.720 に答える