• 締切済み

メールフォーム作成方法

教えてください。素人です。すみません。 私の契約しているプロバイダではcgiでメールフォームの必須項目の指定が出来ません。それによって何も入力しなくても送れてしまいます。 そこでjavaスクリプトで作れば出来ますといわれました。 <FORM method="POST" action="/cgi-bin/f2m.cgi?xxxx"> <TABLE width="688" height="518"> <TBODY> <TR> <TD width="134" align="right">お 名 前</TD> <TD width="20"></TD> <TD width="178"><INPUT size="20" type="text" maxlength="20" name="お名前"></TD> <TD></TD> <TD></TD> </TR> <TR> <TD width="134" align="right">郵便番号</TD> <TD width="20"></TD> <TD width="178"><INPUT size="20" type="text" maxlength="20" name="郵便番号"></TD> <TD></TD> <TD></TD> </TR> <TR> これが以前に作ったメールフォームのソースの一部なのですが、どこかを編集すれば必須項目を記入なければ、記入してくださいなどのメッセージを出せたり、送信できないようにすることはできるのでしょうか?また、メールソフトを起動しないで送る方法も教えてください。お願いいたします

みんなの回答

  • leap_day
  • ベストアンサー率60% (338/561)
回答No.1

使ったことはないのでそのまま転用しますね <SCRIPT language="JavaScript"> <!-- // 未入力項目をチェックする function chValie() { // 入力必須項目(「,」で区切って追加可能) ess = new Array("name", "addr"); for(i=0; i<ess.length; i++) { txt = document.nForm.elements[ess[i]].value; if(txt == "") { alert("未入力項目があります"); return false; } } return true; } //--> </SCRIPT> <FORM name="nForm" onSubmit="return chValie()" method="POST" action="./f2m.cgi?****"> 名前:<INPUT type="text" name="name"> <BR> 住所:<INPUT type="text" name="addr"><BR> <INPUT type="submit" value="送信"><BR> </FORM> 冒頭でも述べたように汎用で使ったことはありませんのでfunctionの中身とかの説明ができません (htmlファイルはあまり使ってないのでif文処理しかしてないので・・・) ですがコピペして試したところ無記入だと『未入力項目があります』というアラート画面が出ました(ブラウザはIEです) んで両方記入されていると次のページに移りました mailtoも使ったことないのですみません(--;)

関連するQ&A

  • メールフォームについて

    この中にどのようなHTMLを書けば自分のPCにメールが届く ようになりますか?よろしくお願いします。 <h2>■MAIL FORM</h2> <div class="text"> <form><table><tr><td width="100" align=right> NAME</td><td align=right><input type="text" name="Name" size="34"></td></tr><tr><td width="100" align=right> MAIL</td><td align=right><input type="text" name="Mail" size="34"></td></tr></table> <TEXTAREA NAME="Comments" ROWS="8" COLS="39" value="comments"></TEXTAREA> <br> <table><tr><td width="100" align=right> </td> </tr><tr> <td width="100" align=right> URL</td><td><input type="text" name="URL" value="http://" size="34"></td></tr><tr><td></td><td align="right"> <INPUT TYPE="reset" VALUE=" Reset "> <INPUT TYPE="submit" VALUE=" Send "></FORM> </td></tr></table><br></div>

    • ベストアンサー
    • HTML
  • DWでのメールフォーム作成

    こんにちは。 DWMXでメールフォーム作成をしたのですが、web上で送信ボタンを押すとなぜかメールアプリケーションが立ち上がって、宛先に送信先のアドレスが表示されています。 メールフォームとは送信ボタンを押すとフォームの内容がそのまま送信先に送信されるものですよね? 以下構文です。なにかおかしいのでしょうか。よろしくおねがいします☆ <form action="mailto:自分のアドレス" enctype="text/plain" name="mailform" id="mailform"> <table width="304" border="0" cellspacing="1" cellpadding="1"> <tr> <td><div align="center">name</div></td> </tr> <tr> <td><div align="center"> <input type="text" name="textfield"> </div></td> </tr> <tr> <td><div align="center">mail adress</div></td> </tr> <tr> <td><div align="center"> <input type="text" name="textfield2"> </div></td> </tr> <tr> <td><div align="center">件名</div></td> </tr> <tr> <td><div align="center"> <input type="text" name="textfield3"> </div></td> </tr> <tr> <td><div align="center">本文</div></td> </tr> <tr> <td><div align="center"> <textarea name="textarea"></textarea> </div></td> </tr> <tr> <td>&nbsp;</td> </tr> <tr> <td><div align="center">   <input type="submit" name="Submit" value="送信"> <input type="reset" name="Submit2" value="リセット">

  • メールフォームについて質問です。

    メールフォームについて質問です。 <h3>ご注文ご依頼メール</h3> <span style="font-weight: bold;"></span> <center> <form style="margin-left: 0px; width: 800px;" method="post" action="当方アドレス" enctype="text/plain" name="メールフォーム"><br /> <table style="width: 694px; height: 202px;"> <tbody> <tr> <td style="text-align: center;"><b>お名前</b></td> <td style="width: 599px; text-align: left;"><input size="40" name="name" type="text" /></td> </tr> <tr> <td style="text-align: center;"><b>郵便番号</b></td> <td style="text-align: left;"><input size="20" name="郵便番号" /></td> </tr> <tr> <td style="text-align: center;"><b>ご住所</b></td> <td style="width: 599px; text-align: left;"><input size="80" name="jyusho" type="text" /></td> </tr> <tr> <td style="text-align: center;"><b>お電話番号</b></td> <td style="text-align: left;"><input size="40" name="電話番号" type="text" />  <font color="#ff0000">(記入例)000-0000-0000</font></td> </tr> <tr> </tbody> </table> <br /> ご希望の商品名・数量などをお書き込みください。<br /> <table> <tbody> <tr> <td colspan="2" align="center"><b><font color="#ff00ff">ご記入内容に問題がなければ、送信するのボタンをクリックして下さい。</font></b></td> </tr> <tr> <td style="text-align: center;" colspan="2"> <input value="送信する" type="submit" />   <input value="取り消す" type="reset" /></td> というメールフォームを作ったのですが、送信ができません。 どこが間違っているのでしょうか? 全くの素人なのでどこが違うのか見当もつきません。 それから、送信後に送信確認ページを表示させたいのですが、どうしたらよろしいでしょうか?

  • JNAVIから提供されたメールフォーム

    まったくの素人だと思ってください。 よろしくお願いします。 JNAVIから提供していただいた、メールフォームに入力必須項目を付けたいのです。 HTMLはホームページビルダーでカスタムできます。 CGIを勉強しようと思って本も買ったのですが???です。 ネットでかなり調べたのですが???です。 HTMLにタグ(というのかな。文字です。)を、書くのですよね。 いろいろと、文字を入れました。エラーがでるようになった文字もあったのですが、文字化けして無茶苦茶になりました。 HTMLは <CENTER><P><BR> <form method="post" action="FormMail.pl"> <!-- 重要 !! "realname" と "email" の項目は変更しないでください 他の "name=" のテキスト項目はサンキュウページに表示されます。 必要に応じて項目を追加、削除してください --> <table> <tr> <td>eMail</td> <td><input type="text" name="_email"></td> </tr> <tr> <td>名前</td> <td><input type="text" name="realname"></td> </tr> <tr> <td>名前(カタカナ)</td> <td><input type="text" name="名前(カタカナ)"></td> </tr><TR> <TD>郵便番号</TD> <td><input type="text" name="郵便番号"></td> </TR><tr> <td>都道府県</td> <td><input type="text" name="都道府県"></td> </tr> <tr> <td>住所</td> <td><input type="text" name="住所"></td> </tr> <tr> <tr> <td>電話番号</td> <td><input type="text" name="_電話番号"></td> </tr> <tr> <td colspan="2"><input type="submit"></td> </tr> </table> </form> </CENTER> です。 私には、無理なのでしょうか? CGIファイルを見なければ入力する文字はわからないのでしょうか? よろしくお願いします。

    • ベストアンサー
    • CGI
  • フォーム内容がメールでうまく取得できない

    ホームページ作り初心者です。 くだらない質問かもしれないのですが、行き詰まって悩んでいます…。 どうかよろしくお願い致します。 今、CGIを使ってフォームを作っています。 基本的なフォームでは問題がないので、CGI自体に問題はないと思います。 それが、メールフォームをテーブルで囲まれたデザインにした途端、フォーム内容がうまくメールで取得できなくなりました。 本当なら 「shopname = ○○○○  name = ○○○○  tel = ○○○○  email = ○○○○  question = ○○○○」 と送ってほしいのに、 「shopname =  ○○○○  name」 となんとも中途半端な内容が送られてきます…。 テーブルを使ったからCGIがうまく作動しないのか、HTMLがおかしいのか、CGIがおかしいのか、どこがいけないのかわかりません。 アドバイスいただけたら嬉しいです。 宜しくお願い致します。 以下、フォームのHTMLです。 --------------------------------------- <form action="./postmail.cgi" method="post" enctype="text/plain" name="form1" id="form1"> <table width="520" border="0" cellspacing="2" cellpadding="2" bgcolor="#7EBEB6"> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> 店舗名 </center></td> <td width="354" bgcolor="#FFFFFF"><input type="text" name="shopname" size="44" /> </td> </tr> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> ご担当者名 </center></td> <td width="354" bgcolor="#FFFFFF"><input type="text" name="name" size="44" id="name" /> </td> </tr> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> お電話番号 </center></td> <td width="354" bgcolor="#FFFFFF"><input type="text" name="tel" size="44" id="tel" /> </td> </tr> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> メールアドレス </center></td> <td width="354" bgcolor="#FFFFFF"><input type="text" name="email" size="44" id="email" /> </td> </tr> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> メールアドレス(確認用) </center></td> <td width="354" bgcolor="#FFFFFF"><input type="text" name="email2" size="44" id="email2" /> </td> </tr> <tr> <td width="152" bgcolor="#FFFFFF" class="style3"><center> お問い合わせ内容 </center></td> <td width="354" bgcolor="#FFFFFF"><textarea name="question" cols="43" rows="7"></textarea></td> </tr> </table> <br /> <input type="submit" name="button" id="button" value="送信" /> <input type="reset" name="button2" id="button2" value="すべてクリア" /> <br /> </form>

    • ベストアンサー
    • HTML
  • メールフォームを作成したのですがエラーと表示されてしまいます。どこがいけないのですか?

    お世話になります。当方初心者です。是非助けていただきたく思います。 いろんなサイトでよくあるようにメールフォームを作成してCGIプログラムでメールを送信できるようにしたいと思い、以下のようにhtmlを作成しました。CGIはAppsPageさんのサイトでお借りしてkisomail3rdというCGIを使いました。http://apps.cside.com/cgi/ レンタルしているサーバはロリポップです。http://www.lolipop.jp/?mode=manual&state=hp&state2=cgi CGIでロリポップが指定しているPERLパス・SENDMAILパスを変更してパーミッションも700に設定したのですが、何故かCGIエラーという表示が出て、うまく作動してくれません。初心者ゆえどこか基本的なことを見落としていると思います、どうか教えてください。 ■HTMLソースです。 <form action="kisomail2nd_1_05/kisomail2nd/sendmail.cgi" method="post" class="style1"> <table> <tr> <td>会社・店舗名</td> <td class="kakikomi"><input type="text"name="name"size="40"/></td> </tr> <tr> <td>お名前</td> <td class="kakikomi"><input type="text"name="name2"size="40"/></td> </tr> <tr> <td>郵便番号</td> <td class="kakikomi"> <input type="text"name="zip1"size="3"maxlength="3"/> - <input type="text"name="zip2"size="4"maxlength="4"/> </td> </tr> <tr> <td>都道府県</td> <td class="kakikomi"> <select name="prefecture"> <option value=""selected="selected">選択してください </option> <option value="日本国外" >日本国外</option> <option value="北海道" >北海道</option> <option value="青森県" >青森県</option> (以下略) </select> </td> </tr> <tr> <td>市町村・番地</td> <td class="kakikomi"><input type="text"name="add1"size="40"/></td> </tr> <tr> <td>E-Mail</td> <td class="kakikomi"><input type="text"name="mail"size="40"/></td> </tr> <tr> <td>電話番号</td> <td class="kakikomi"><input type="text"name="name2"size="40"/></td> </tr> <td>お問い合わせの種類</td> <td class="kakikomi"> <input name="category"type="radio"value="このサイトについてのお問い合わせ"/>お見積り<br/> <input name="category"type="radio"value="その他お問い合わせ"/> その他お問い合わせ</td> </tr> <tr> <td>お問い合わせ内容</td> <td class="kakikomi"><textarea name="contact" cols="40" rows="15"></textarea></td> </tr> </table> <div> <input type="submit" value=" メール送信 "> <input type="reset" value=" リセット "> </div> </form>

    • ベストアンサー
    • CGI
  • メールフォームで必須項目の仕方

    メールフォームで必須項目を入力しないと送信できないようにするにはどうすればいいでしょうか? 現在は以下のとおりに書いてありますが、必須項目に書いてなくても送信できてしまいます。 <form method="post" action="CGI"> <h3>お問い合わせフォーム</h3> <p>*は必須項目です。</p> <table> <tbody> <tr> <th>お問い合わせ内容*</th> <td><textarea name="お問い合わせ内容" class="l" cols="40" rows="12"></textarea></td> </tr> <tr> <th>お名前(漢字)*</th> <td><input type="text" name="お名前(漢字)" class="m"></td> </tr> <tr> <th>お名前(フリガナ)*</th> <td><input type="text" name="お名前(フリガナ)" class="m"></td> </tr> <tr> <th>E-Mail*</th> <td><input type="text" name="E-mail" class="l"></td> </tr> <tr> <th>電話番号(半角)*</th> <td><input type="text" name="電話番号" class="l"></td> </tr> </tbody> </table> <input type="submit" value="  送信  " class="button"></form> また必須項目が未入力のときにエラーメッセージ(「お名前が未入力です。」など)を出したいのですがどのようにすればいいですか?

    • ベストアンサー
    • CGI
  • メールフォームの作り方(html)dw cs3

    dreamweaver cs3.0 でHPを作っています。 メールフォームを作ったのですが、「送信」ボタンを押すとメールソフトが起動し、宛先のメールアドレスだけが入力された「メッセージの作成」窓が開き、フォームの枠に入力された内容が、メール窓に反映されず、空のメッセージが送られてきます。 htmlはフォームタブにテーブルを使い下記の様にしていますが、何か指示が間違っているのでしょうか? <form action="mailto:★★★@yahoo.co.jp" method="post" enctype="application/x-www-form-urlencoded" name="sougo_rinku" id="sougo_rinku"> <table width="520" border="1" align="center"> <tr> <td>HPアドレス</td> <td><input name="hp_URL" type="text" value="http://" size="50" maxlength="1000" /></td> </tr> <tr> <td valign="top">HPの紹介文</td> <td><textarea name="hp_syoukaibun" cols="41" rows="5"></textarea></td> </tr> </table> <p align="center"><input name="送信" type="submit" value="送信" /></p> </form> また、FC2のメールフォームの様な、メールソフトを使わないフォームにしたいのですが、このやり方ではどうしても、送信ボタンを押した人のメールソフトに依存してメールを受け付けることになるのでしょうか? CGIは使ったことがなく、よくわかりません。 ほぼ知識がありませんが教えてください、よろしくお願いします<(_ _)>

    • ベストアンサー
    • HTML
  • このメールフォームが機能しないのは何故ですか?

    お世話になります。メールフォームを作成してCGIプログラムでメールを送信できるようにしたいと思い、以下のようにhtmlを作成しました。CGIはSYNCK GRAPHICAさんのサイトでお借りして自動返信機能付メールフォームCGIというCGIを使わせてもらいました。?http://www.synck.com/contents/download/cgi-perl/mailform.html レンタルしているサーバはロリポップです。?http://www.lolipop.jp/?mode=manual&state=hp&state2=cgi? CGIでロリポップが指定しているPERLパス・SENDMAILパスを変更してパーミッションも700に設定したのですが、何故かエラーの表示が出て、うまく作動してくれません。郵便番号自動検索機能も正常に機能しません。それでSYNCK GRAPHICAさんにどうして?と聞いたのですが、「http://www.自分のサイトアドレス/mailform.js←ここにファイルが無いためと考えられます。」という返事のみで、「何のファイルがないの?」って感じで全く分かりませんでした。初心者ゆえどこか基本的なことを見落としていると思います、どうか教えてください。 <table> <tr> <td>メールアドレス<span>*</span><p class="form">e-mail address</p></td> <td class="kakikomi"><input type="text" name="email(必須)" style="width: 300px;ime-mode: disabled;" onBlur="keepField(this.form.id)"></td> </tr> <tr> <td>確認用メールアドレス<span>*</span><p class="form">e-mail address</p></td> <td class="kakikomi"><input type="text" name="confirm_email" style="width: 300px;ime-mode: disabled;" onBlur="keepField(this.form.id)"></td> </tr> <tr> <td>お名前<span>*</span><p class="form">your name</p></td> <td class="kakikomi"><input type="text" name="お名前(必須)" style="width: 300px;ime-mode: active;" onBlur="keepField(this.form.id)"></td> </tr> <tr> <td>性別<p class="form">sex</p></td> <td class="kakikomi"><input type="radio" name="性別" value="男" onBlur="keepField(this.form.id)">男 <input type="radio" name="性別" value="女" onBlur="keepField(this.form.id)">女</td> </tr> <tr> <td>電話番号 <p class="form">telephone number</p> </td> <td class="kakikomi"><input type="text" name="電話番号" style="width: 120px;ime-mode: disabled;" onBlur="keepField(this.form.id)"></td> </tr> <tr> <td>郵便番号<p class="form">postcode</p></td> <td class="kakikomi"><input type="text" name="郵便番号" style="width: 60px;ime-mode: disabled;" onBlur="keepField(this.form.id)"> <input type="button" value="〒から住所を自動入力" name="postcode" onClick="javascript:checkPostcode('mailform','郵便番号','住所(必須)');"></td> </tr> <tr> <td>住所<span>*</span><p class="form">address</p></td> <td class="kakikomi"><input type="text" name="住所(必須)" style="width: 300px;ime-mode: active;" onBlur="keepField(this.form.id)"></td> </tr> <tr> <td>ご用件<span>*</span><p class="form">inquiry subject</p></td> <td class="kakikomi"><select name="ご用件(必須)" id="business" onBlur="keepField(this.form.id)"> <option value="" selected>下記の中から必ず選択して下さい</option> <option value="デザイン・印刷のお見積り">デザイン・印刷のお見積り</option> <option value="その他お問い合わせ">その他お問い合わせ</option> </select> </td> </tr> <tr> <td>ご用件<span>*</span><p class="form">inquiry body</p></td> <td class="kakikomi"><textarea name="ご用件(必須)" style="width: 300px;height: 140px;ime-mode: active;" onBlur="keepField(this.form.id)" rows="15" cols="30"></textarea></td> </tr> <tr> <td>送信確認<p class="form">sending confirm</p></td> <td class="kakikomi"><input type="checkbox" name="送信確認(必須)" value="送信チェック済み" onClick="keepField(this.form.id)">上記内容を確認したらチェックを入れてください</td> </tr> <tr> <td></td> <td class="kakikomi"><input type="submit" value="メールを送信する"> <input type="reset" name="reset" value="リセット"><br></td> </tr> <tr> <td></td> <td class="kakikomi"><span>*</span>は必須項目です。</td> </tr> </table> </form>

    • ベストアンサー
    • CGI
  • 子画面から親画面に値を返す方法

    親画面で入力した内容をPOST後 子画面に表示して(表示のみ、モーダル状態)内容を確認して ボタンで【OK】か【キャンセル】を押下して親画面に何が押下されたか 戻したいです。 私なりに考えて見ましたが、子画面からの戻し方がよく わかりません。 よろしくお願いします。 親画面 【oya.php】 <? session_start(); if($_POST["CHK"]){ $_SESSION["item1"] = $_POST["item1"]; $_SESSION["item2"] = $_POST["item2"]; returnValue = showModalDialog("ko.php"); //子画面の戻り値が【OK】のときDBに登録処理をする //【OK】でないときはそのまま } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <form action="oya.php" method="post"> <table width="70%" align = "center" cellspacing="0"> <tr> <td align="right">入力項目1</td> <td><input type="text" name="item1" size="10" maxlength="10" value = "<? echo $item1 ?>"></td> </tr> <tr> <td align="right">入力項目2</td> <td><input type="text" name="item2" size="10" maxlength="10" value = "<? echo $item2 ?>"></td> </tr> <tr> <td> <input type="submit" name="CHK" value="確認"> </td> </tr> </table> </form> </body> </html> 子画面 【ko.php】 <? session_start(); ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>確認画面</title> <link rel="stylesheet" href="./css/style.css" type="text/css" /> </head> <body> 確認後「OK」OR「キャンセル」を押して下さい。 <table width="70%" align = "center" cellspacing="0"> <tr> <td align="right">入力項目1</td> <td><input type="text" name="item1" size="10" maxlength="10" value = "<? echo $_SESSION["item1"] ?>" readonly="readonly"></td> </tr> <tr> <td align="right">入力項目2</td> <td><input type="text" name="item2" size="10" maxlength="10" value = "<? echo $_SESSION["item2"] ?>" readonly="readonly"></td> </tr> </table> </body> </html>

    • ベストアンサー
    • PHP

専門家に質問してみよう