●やりたいこと
PDFにアクセスする(した)人(A)の情報を入手(B)したい
●ホームページの構成
1.(A)必要事項にチェック・e-mailアドレスを入力後、Submitボタンを押す
2.必要事項とメールアドレスが指定のe-mailアドレス(B)に届く
3.(A)は希望のPDFファイルを開けられる
●問題点
JavaScriptで作成しているのですが、
(A)がSubmitボタンを押すと
「このフォームはe-mailを経由して送信されます。送信することによりあなたのe-mail addressがわかりますし、暗号化せず送られますので危険です。送信しますか?(英文)」と表示されます。
YES → (B)にメールが来て(A)はPDFを見れます。
NO → (B)にメールがこないにもかかわらず、(A)はPDFを見れます。
(A)の情報を見たいので、NOにした場合はPDFのリンク先に飛ばないようにしたいのですが、どのようにすればよいでしょうか?
以下使っているタグです。
●HEAD
<SCRIPT Language="JavaScript">
<!--
function checkField(){
if (document.Form1.PURPOSE.value == ""||document.Form1.EMAIL.value == ""){
alert("必須項目が入力されていません。");
return false;
}
location.href="pdf.htm";
}
//-->
</SCRIPT>
●body
<FORM Name="Form1" METHOD="POST" ACTION="mailto:***@****.com subject=プレゼン請求" onSubmit="return checkField()" ENCTYPE="TEXT/PLAIN">
教えてください。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
> NO → (B)にメールがこないにもかかわらず、(A)はPDFを見れます。
そりゃ、そうでしょう(^_^;)
ここで質問されている内容は、「暗号化されていないけれど、メールを送っても大丈夫?」と言うこと*だけ*を聞いているのであって、次の処理に移動する? って聞いているのではないのです。
メールを送信しなくても、メールアドレスなどが空で無いのだからlocation.href="pdf.htm"; が実行されるのが当たり前の流れですよね?
location.href="pdf.htm"; の前で、「メールは送信されたか?」と聞くことができれば良いのでしょうけど。
要するに、発想点がズレているのです。
さて。本題に入りましょう。
結論から言って、こう言う処理は JavaScript 向きの処理ではありません。JavaScript と言うのはクライアントサイドで動作するものです。しかし、PDFファイルのダウンロードはサーバーサイドで制御すべき事ですよね。
なので、JavaScriptではなくて、CGIやPHPを使ってメールフォームを作成し、メール送信処理が終了した時点で、ダウンロードページへ遷移する様に作るのが妥当です。
早速の回答ありがとうございます。やはりCGI/PHPですよね。「発送点がズレている」思わず笑ってしまいました~。無知をさらけ出してしまった感じ~。
もっと勉強します。ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- JavaScript フォームが空欄の時にフォームの外をクリックすると、エラーが出るコードを調べています。 1 2023/06/25 11:51
- JavaScript javascriptで入力フォームが空欄の時にアラートによるエラーを出すコードを書いています。 2 2023/06/13 17:58
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- JavaScript アップロードファイルの種類によって処理を分岐させたいのですが書き方が分からずアドバイスお願いします 4 2023/06/17 19:12
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript 1日1回引けるJavaScriptおみくじについて 1 2022/12/12 22:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラムについて。
-
GASに文字列として関数を入れる...
-
ジャバスクリプトについて。
-
React hooksが値を返して配列変...
-
フロントエンドフレームワーク...
-
画面遷移を行わずに同一ページ...
-
特定の文字列を複数抜き出した...
-
jsで質問です。 ボタンが二つ存...
-
読み込んだQRコードをフォーム...
-
二次元配列を使って順位をだす...
-
jsで質問です。 displayプロパ...
-
var exports = exports || {}; ...
-
Q&A掲示板の入力フォームに文字...
-
メールフォームの日付入力フォ...
-
iOSのみダブルタップが必要
-
HTMLタグに複数のクラスを設定...
-
変数名をどのようにつけるのが...
-
ボタンを押したあとに画像を表...
-
disabled プロパティが表示され...
-
二次元配列の中の各行の要素を...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
二次元配列を使って順位をだす...
-
プログラムについて。
-
Q&A掲示板の入力フォームに文字...
-
メールフォームの日付入力フォ...
-
iOSのみダブルタップが必要
-
ジャバスクリプトについて。
-
画面遷移を行わずに同一ページ...
-
特定の文字列を複数抜き出した...
-
指定時間になったら、WEBサイト...
-
追加ボタンを押した際に ok ボ...
-
①入力フォーム→②確認表示画面→③...
-
スマホ上で、左右スワイプで次...
-
読み込んだQRコードをフォーム...
-
フロントエンドフレームワーク...
-
React hooksが値を返して配列変...
-
GASでGoogleフォームの自動返信...
-
初心者です。gulpでコンパイル...
-
階層別の組織図の自動作成について
-
HTMLで作った時報アプリが動き...
-
jQueryで同じクラス名のものを...
おすすめ情報