![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?8acaa2e)
ある会員専用サイトをつくってます。
こんな事を考えているのですが、うまく行きません。
(1)メールフォームから名前・メールアドレスを入力しを送信。
(2)送信を押すと名前・アドレスなどと一緒に以下の情報を取得
●IPアドレス ※$ENV{'REMOTE_HOST'})
●OS・ブラウザ情報※$ENV{'HTTP_USER_AGENT'}
●携帯識別番号(携帯会社別)
(3)上記の情報より、
LパソコンでアクセスするとIPアドレスをチェックし会員を判別
L携帯電話からだと携帯識別番号で判別
といった仕組みをつくろうと思っています。
メールフォームは自力では無いですが、オープンソースを使用し作成しました。
※Copyright (C) 1996-2005 杜甫々 様
とほほのWWW入門>メール送信フォーム より
$ENV{●●●}を組み込めば入力情報と同時に取得できると思ったのですが、うまく取れません。
十分に理解せず他人様のソースを安易に利用しようとする私が悪い事は多分に承知しておりますが、何卒ご教授お願いします。
---以下ソース---
#!/usr/local/bin/perl
#セッティング
require 'cgi-lib.pl';
require 'jcode.pl';
&ReadParse(*in);
$name = "$in{'name'}";
$from = "$in{'from'}";
$subject = "$in{'subject'}";
$body = "$in{'body'}";
$to = '●●●@●●.ne.jp';
#送信前処理
&jcode'convert(*name,'jis');
&jcode'convert(*subject,'jis');
&jcode'convert(*body,'jis');
#sendmail
open(MAIL, "| /usr/sbin/sendmail -t");
print MAIL "To: $to\n";
print MAIL "From: $from\n";
print MAIL "Subject: $subject\n";
print MAIL "Content-Type: text/plain;\n\n";
print MAIL "お名前:$name\n";
print MAIL "本文:$body\n";
close(MAIL);
#HTML表示の前処理
&jcode'convert(*name,'sjis');
&jcode'convert(*subject,'sjis');
&jcode'convert(*body,'sjis');
$body =~ s/[\r\n,\n]/<BR>/g;
#HTMLに表示
print "Content-type: text/html\n\n";
print "<HTML><BODY>\n";
print "以下のメールを送信しました<HR>";
print "お名前:$name\n<BR>";
print "メールアドレス:$from\n<BR>";
print "題目:$subject\n<BR>";
print "本文:$body\n<BR>";
print "</BODY></HTML>\n";
exit;
No.1ベストアンサー
- 回答日時:
「うまく取れません」というのは、どういう取得方法を試されたんでしょう?ちょっと例示されたソースからは読み取れません。
こちら↓あたりを参考に、とりあえずメールに取得した情報を埋め込んでみてはどうでしょうか?
http://perl.misty.ne.jp/21.html
ただ「IPアドレスで会員を判別」というのは、とても実用になるとは思えません。携帯の識別番号(これはキャリアのサイトに取得方法が記載されてますよね)は確実でしょうけど・・。
そうそうのご回答ありがとうございました。
>ちょっと例示されたソースからは読み取れません。
いろんなほうほうをためしたのですが、うまく行かないため素のまま乗せました。
>ただ「IPアドレスで会員を判別」というのは、とても実用になるとは思えません。
パソコンからのアクセスはIPアドレスは固定されてると思ったのですが、違うのでしょうか・・・
恥ずかしいです・・・
No.2
- 回答日時:
本文を読んでません。
> ●IPアドレス ※$ENV{'REMOTE_HOST'})
IPアドレスはREMOTE_ADDRです。
REMOTE_HOSTはサーバー負荷の軽減のため、使えないようにしているホスティングサービスもあります。(空文字列になります)
うまくとれないじゃなくて、
何がどううまく取れないか、どんな文字列が取れることを期待してどんな文字列を取れたのか、
という質問の仕方にすれば、より有益な回答が得られると思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- CGI htmlからパラメータで、cgiに渡したい。 1 2023/02/06 16:15
- PHP if(preg_match("/[^0-9]/",$gu_d)){意味を教えてください。 1 2022/05/06 05:37
- PHP ここでの ②if($su_d<>"")の比較演算子 を使う理由は 1 2022/03/26 02:33
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- Excel(エクセル) PHPプログラムをエクセルに張り付けると検索ボックスがでてくる! 3 2022/05/08 07:10
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- CGI perlで書いたcgiでsqliteの使い方を教えてください 2 2023/05/08 21:29
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHP MySQLに画像を直接保存 2 2022/06/05 11:50
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
CGI メールフォームからBCCのア...
-
メール送信のFromアドレスについて
-
Application.ScreenUpdating = ...
-
int(input("○○"))の使い方
-
PerlでXMLを解析して出力する。
-
PICで世界時計を作りたいのですが
-
整数でないとき
-
CGI初心者です
-
1つのプログラム内で"html出力...
-
JSONで文字列が長い時
-
確認画面に空白がでます
-
optionのselectedは更新時は効...
-
perlがうごきません
-
awkの正規表現での最左最短マッ...
-
javaのパッケージ構成で各パッ...
-
実行時エラー 3020の対策
-
前日の日付取得するには?
-
フォーム選択後のリンクを作る方法
-
Use of uninitialized value ---
-
CGIは初心者です。よろしくお願...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
sendmailで複数の宛先にメール...
-
フォームの日本語が文字化け
-
Perlからメール送信で文字化け
-
Sendmailで送信。メアドが違う...
-
CGI メールフォームからBCCのア...
-
perl フォームメール送信の...
-
Perl からbashを呼び出したい
-
sendmailで複数アドレスに送信...
-
perl で mailto: リンク
-
自動返信について
-
auのiPhoneでの受信メールが文...
-
sendmailが上手く動かないのか...
-
メールフォームの訪問者情報取...
-
crontabで
-
cgi.pmで作成されたsendmailプ...
-
sendmailのFROMに日本語を使う
-
メールのタグ(<a href="mailto:...
-
メール送信のFromアドレスについて
-
Sendmailで送信すると本文にメ...
-
Perlにて、sendmailを使用する...
おすすめ情報