- 締切済み
メルマガ登録用みたいな、凄いシンプルなCGIメールフォームの作り方が知
メルマガ登録用みたいな、凄いシンプルなCGIメールフォームの作り方が知りたいです。 メールアドレス ************** [登録] [解除] サイトで探してみたのですが、複雑なものはたくさんあるのですが 余計な機能は一切いらず、自動返信なども要りません。 登録用アドレスと、解除用アドレスはあります。 どなたか詳しい方教えていただけませんか? よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- foitec
- ベストアンサー率43% (1080/2457)
ANo1です。 済みません。書き込んだのはデータの受け取りを記述したCGIを書き忘れています。 書き込んだ記述はCGIではなく単なるタグでの記述です。 メールアドレスの登録だけならばCGIを使用しなくても可能です。 その後の処理はANo2さんの記述を参考にしたら如何でしょうか? 但しPerl を使用しているようですから、設置するサーバーによって Perl のパスが異なるのできちんと調べて先頭行に記述する必要があります。 例えば #!/usr/bin/perl などです。 CGIでばらば参考URLからダウンロードし調べれば流用できます。 参考URLで開いたページの メール関連のサンプルのうち マガジンガーZ v.1.03 の登録ページの記述が大変参考になるはずです。 イメージとしては以下のような感じです http://cgiscriptmarket.com/sample/magazinegerZ/
- kt_yuka
- ベストアンサー率53% (8/15)
では、No1の方からの受取部分です。 PerlとMySQLを使った場合です。 文字コードはEUCを使っています。 非常に手抜きです。同じアドレスで登録すると二重に登録されます。 これを見て分かるようであれば、ご自身で改良してみてください。 (全角スペースは消すか半角にしてください) --------------------------------------------------------------------------- #!/usr/bin/perl use DBI; use CGI; ### DBに接続 $con_dbhost = 'localhost'; $con_dbname = 'dbname'; #データベースは自分で作成してください。 $con_dbuser = 'username'; $con_dbpass = 'password'; $dbh = DBI->connect("DBI:mysql:$con_dbname:$con_dbhost",$con_dbuser,$con_dbpass) || die "CONNECT ERROR $DBI::ERRSTR"; $dbh->do("set names ujis"); #必要に応じて ### formの内容を受け取る my $in = CGI->new; ### 登録 if ($in->param("mode") eq 'join_in'){ $dbh->do("insert into magdb(email) values (".$dbh->quote($in->param("email")).")"); $message ="登録しました。"; } ### 削除 if ($in->param("mode") eq 'join_out'){ $dbh->do("delete from magdb where email=".$dbh->quote($in->param("email"))); $message = "削除しました。"; } ### 結果表示 print "Content-type: text/html; charset=EUC-JP\n\n\n"; print <<"EOT"; <html> <head></head> <body> $message </body> </html> EOT exit;
- foitec
- ベストアンサー率43% (1080/2457)
CGIの部分でよければ以下のとおりで如何? <table width="100%"><tr><th bgcolor="#008080"> <font color="#FFFFFF">メールアドレス登録</font></table> <blockquote> <h3>講読の登録・解除・変更</h3> <font color="#BB0000">▼メールマガジンの「登録」</font> <br><br> <form action="./magbbs.cgi" method="POST"> <input type=hidden name=mode value="join_in"> <small>メールアドレス(半角):</small><br> <input type=text name=email size=40> <input type=submit value="登録"></form> <P><font color="#BB0000">▼新着情報メールマガジンの「解除」</font><br><br> <form action="./magbbs.cgi" method="POST"> <input type=hidden name=mode value="join_out"> <small>メールアドレス(半角):</small><br> <input type=text name=email size=40> <input type=submit value="解除"></form> <br><br> *1 : 登録したアドレスを「変更」する場合は、一旦「解除」した後、新規に「登録」して下さい。<br> </blockquote> </div> </body> <html>
補足
ありがとうございます。出来れば構成等一通り教えていただきたいのですが無理でしょうか? わがまま言ってすみません。