問い合わせフォームの修正箇所とコード

このQ&Aのポイント
  • 問い合わせフォームでの確認画面の表示に関して、修正箇所とコードを教えてください。
  • 質問者は、問い合わせフォームをphpで作成しています。質問者は、「戻る」ボタンだけを表示する場合と、「戻る」と「OK」ボタンを表示する場合を区別することができました。しかし、問い合わせフォームの上に表示する文言を条件によって変更したいと考えています。具体的には、修正箇所がある場合には「入力内容に誤りがあります。※印の項目は必ずご記入ください。」と表示し、正確に入力されている場合には「以下の内容で送信しますか?」と表示したいです。この場合、どのようなコードをどの部分に記述すれば良いでしょうか?
  • 質問者の提供したphpファイルのコードには無駄が多いと思われますが、それについては特に問題ありません。
回答を見る
  • ベストアンサー

問い合わせフォームでの確認画面について

phpで問い合わせフォームを作成しているのですが、修正ヵ所があれば問い合わせフォームの下に「戻る」ボタンだけを表示し、正確に入力されていれば「戻る」ボタンと「OK」ボタンを表示することができました。 しかし、問い合わせフォームの上に表示する、修正ヵ所があれば「入力内容に誤りがあります。※印の項目は必ずご記入ください。」、正確に入力されていれば「以下の内容で送信しますか?」を表示させることができません。 この場合、どのようなコードを、どの部分に記述したら良いのでしょうか? ちなみに、submit後のphpファイルのコードは以下となります。 かなり無駄が多いかもしれません。 <table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="190" align="left" bgcolor="#FFF09D">お名前<span class="tabletext1"></span></td> <td> <?php $name=$_POST['name']; if($name=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $name; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス<span class="tabletext1"></span></td> <td> <?php $mail=$_POST['mail']; if (!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { echo'<FONT COLOR="#cc3333">※正しいメールアドレスを指定してください。</FONT>';; }elseif($_POST['mail']!==$_POST['mail2']) { echo '<FONT COLOR="#cc3333">※確認用メールアドレスと一致していません。</FONT>';; }else{ echo $mail; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス(確認)<span class="tabletext1"></span></td> <td> <?php $mail2=$_POST['mail2']; if($mail2=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $mail2; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">お問い合せ内容<span class="tabletext1"></span></td> <td> <?php $list=$_POST['list']; if($list=='お問い合せ内容をお選びください') { echo'お問い合せ内容をお選びください<FONT COLOR="#cc3333">&nbsp;※必ず入力してください。</FONT>';; } else { echo $list; } ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">内容<span class="tabletext1"></span></td> <td> <?php $content=$_POST['content']; if($content=='') { echo'<FONT COLOR="#cc3333">※必ず入力してください。</FONT>';; } else { echo $content; } ?> </td> </tr> </table> <?php if($name==''|| $mail==''|| $mail2==''|| $list==''|| $content=='') { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif($_POST['mail']!==$_POST['mail2']) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif(!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } elseif($list=='お問い合せ内容をお選びください') { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } else { echo'<form method="post"action="thanks.php">'; echo'<input type="hidden" name="name" value="'.$name.'">'; echo'<input type="hidden" name="mail" value="'.$mail.'">'; echo'<input type="hidden" name="mail2" value="'.$mail2.'">'; echo'<input type="hidden" name="list" value="'.$list.'">'; echo'<input type="hidden" name="content" value="'.$content.'">'; echo'<p align="center" class="margin01"><input type="button"onclick="history.back()"value="戻る">'; echo'<input type="submit"value="OK"></p>'; echo'</form>'; } ?>

noname#233083
noname#233083
  • PHP
  • 回答数2
  • ありがとう数2

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ちょっと大人げなくて失礼致しましたm(_ _)m > この場合、どのようなコードを、どの部分に記述したら良いのでしょうか? ドコに出力したいかにもよりますが…(^^; > かなり無駄が多いかもしれません。 echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; ここの部分、コピペなのでもし最初の修正を間違えていると 全部ダメになっちゃうのが怖いですよね。 現にこのソース、inputタグが閉じられていません。 書き換えてしまうのはどうかと思ったのですが、 下記のような感じで実現されていますか? もし私の解釈が違うようでしたらご指摘下さい。 <?php /* 出力(echo)するためのfunction $errorBoolはエラーがあればtrue こうしておけば、後々色を変えたい時とか楽になります。 */ function myEcho($errorBool, $value) { if($errorBool) { echo'<FONT COLOR="#cc3333">',$value,'</FONT><br/>';; } else { echo $value; } } // list用? function myListEcho($errorBool, $value) { if($errorBool) { echo'お問い合せ内容をお選びください<FONT COLOR="#cc3333">&nbsp;※必ず入力してください。</FONT>';; } else { echo $value; } } // 先に各チェックをやってしまった方が、後々汎用性が出ます // 名前のチェック $name=$_POST['name']; $nameError = false; if($name=='') { $nameError = true; $name = '※必ず入力してください。';; } // E-mailのチェック $mail=$_POST['mail']; $mailError = false; $mail2=$_POST['mail2']; $mail2Error = false; if (!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { $mailError = true; $mail='※正しいメールアドレスを指定してください。'; }elseif($mail!==$mail2) { $mailError = true; $mail='※確認用メールアドレスと一致していません。'; } // 確認用チェック if($mail2=='') { $mail2Error = true; $mail2='※必ず入力してください。'; } // お問い合わせ内容確認? $list=$_POST['list']; $listError = false; if($list=='お問い合せ内容をお選びください') { $listError = true; } // 内容 $content=$_POST['content']; $contentError = false; if($content=='') { $contentError = true; $content='※必ず入力してください。';; } ?> <?php // そのままコピペで移動できるように別にしました。(ここがヒントのechoです) if($nameError || $mailError || $mail2Error || $listError || $contentError) { echo'<FONT COLOR="#cc3333">入力内容に誤りがあります。※印の項目は必ずご記入ください。</FONT><br/>';; } else{ echo'以下の内容で送信しますか?';; } ?> <table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="190" align="left" bgcolor="#FFF09D">お名前<span class="tabletext1"></span></td> <td> <?php myEcho($nameError,$name);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス<span class="tabletext1"></span></td> <td> <?php myEcho($mailError,$mail);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス(確認)<span class="tabletext1"></span></td> <td> <?php myEcho($mail2Error,$mail2);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">お問い合せ内容<span class="tabletext1"></span></td> <td> <?php myListEcho($listError,$list);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">内容<span class="tabletext1"></span></td> <td> <?php myEcho($contentError,$content);; ?> </td> </tr> </table> <?php if($nameError || $mailError || $mail2Error || $listError || $contentError) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } else { echo'<form method="post"action="thanks.php">'; echo'<input type="hidden" name="name" value="'.$name.'">'; echo'<input type="hidden" name="mail" value="'.$mail.'">'; echo'<input type="hidden" name="mail2" value="'.$mail2.'">'; echo'<input type="hidden" name="list" value="'.$list.'">'; echo'<input type="hidden" name="content" value="'.$content.'">'; echo'<p align="center" class="margin01"><input type="button"onclick="history.back()"value="戻る">'; echo'<input type="submit"value="OK"></p>'; echo'</form>'; } ?>

noname#233083
質問者

お礼

早々にお返事頂き、ありがとうございます!! 素人なので、確認したり、修正したりするのに、時間がかかりますので、わからないところががありましたら、後ほど補足説明させて頂きます。 ありがとうございました!!

noname#233083
質問者

補足

書き換えて頂いたコードをコピペしたのですが、エラー表記がでてしましました。 ちなみになのですが、PHPファイルにfunctionを記述する場合、何か環境を変えたりする必要はあるでしょうか? スライドショーを使うために、jQueryでfunctionをコピペで使ったことはあります。 とても難しいです・・・

その他の回答 (1)

回答No.1

http://qanda.rakuten.ne.jp/qa7817471.htmlで回答した者です。 「こんな方法が…」と提示しようかと思いましたが、前回の回答にお礼も補足もないので 私の回答が気に入らないんでしょうね。 ただ未回答はよくないと思いますので、ヒントだけ。 「echo」を使えばいいです。

noname#233083
質問者

お礼

ちょっと、待ってください!! 質問を終了していないといきは、お礼率は90%後半ですが、私は全ての回答にお礼をしておりますので、質問を終了すれば、お礼率は100%です! 時間差でbvltiggeari様へのお礼が遅くなりました!すみません!!ベストアンサーに致しました!! それにもかかわず、ヒントを下さいまして、ありがとうございます!! しかし、ヒントだけでは、わかりません・・・ どうかチャンスを下さいませ!!

noname#233083
質問者

補足

ちょっと、待ってください!! 質問を終了していないといきは、お礼率は90%後半ですが、私は全ての回答にお礼をしておりますので、質問を終了すれば、お礼率は100%です! 時間差でbvltiggeari様へのお礼が遅くなりました!すみません!!ベストアンサーに致しました!! それにもかかわず、ヒントを下さいまして、ありがとうございます!! しかし、ヒントだけでは、わかりません・・・ どうかチャンスを下さいませ!!

関連するQ&A

  • サニタイズについて教えて下さい。

    PHPで問い合わせフォームを作成しましたが、サニタイズされているかがわかりません。 以下は、submit後のphpファイルですが、サニタイズされていなければ、どこにどのようなコードを記述すれば良いのでしょうか? また、サニタイズはhtmlsprcialcharsの他になにかあるのでしょうか? function myEcho($errorBool, $value) { if($errorBool) { echo'<FONT COLOR="#cc3333">',$value,'</FONT><br/>';; } else { echo $value; } } // list用? function myListEcho($errorBool, $value) { if($errorBool) { echo'お問い合せ内容をお選びください<FONT COLOR="#cc3333">&nbsp;※必ず入力してください。</FONT>';; } else { echo $value; } } // 名前のチェック $name=$_POST['name']; $nameError = false; if($name=='') { $nameError = true; $name = '※必ず入力してください。';; } // E-mailのチェック $mail=$_POST['mail']; $mailError = false; $mail2=$_POST['mail2']; $mail2Error = false; if (!preg_match( '/^[a-z0-9][a-z0-9_\.\-]*@[a-z0-9][a-z0-9_\.\-]+[a-z]$/i', $mail)) { $mailError = true; $mail='※正しいメールアドレスを指定してください。'; }elseif($mail!==$mail2) { $mailError = true; $mail='※確認用メールアドレスと一致していません。'; } // 確認用チェック if($mail2=='') { $mail2Error = true; $mail2='※必ず入力してください。'; } // お問い合わせ内容確認? $list=$_POST['list']; $listError = false; if($list=='お問い合せ内容をお選びください') { $listError = true; } // 内容 $content=$_POST['content']; $contentError = false; if($content=='') { $contentError = true; $content='※必ず入力してください。';; } ?> <?php if($nameError || $mailError || $mail2Error || $listError || $contentError) { echo'<p align="center"><FONT COLOR="#cc3333">入力内容に誤りがあります。※印の項目は必ずご記入ください。</FONT></p>';; } else{ echo'<p class="text4">以下の内容で送信しますか?</p>';; } ?> <table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="190" align="left" bgcolor="#FFF09D">お名前<span class="tabletext1"></span></td> <td> <?php myEcho($nameError,$name);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス<span class="tabletext1"></span></td> <td> <?php myEcho($mailError,$mail);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス(確認)<span class="tabletext1"></span></td> <td> <?php myEcho($mail2Error,$mail2);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">お問い合せ内容<span class="tabletext1"></span></td> <td> <?php myListEcho($listError,$list);; ?> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">内容<span class="tabletext1"></span></td> <td> <?php myEcho($contentError,$content);; ?> </td> </tr> </table> <?php if($nameError || $mailError || $mail2Error || $listError || $contentError) { echo'<form>'; echo'<p align="center" class="margin01"><input type="button" value="戻る" onclick="history.back()"</p>'; echo'</form>'; } else { echo'<form method="post"action="thanks.php">'; echo'<input type="hidden" name="name" value="'.$name.'">'; echo'<input type="hidden" name="mail" value="'.$mail.'">'; echo'<input type="hidden" name="mail2" value="'.$mail2.'">'; echo'<input type="hidden" name="list" value="'.$list.'">'; echo'<input type="hidden" name="content" value="'.$content.'">'; echo'<p align="center" class="margin01"><input type="button"onclick="history.back()"value="戻る">'; echo'<input type="submit"value="OK"></p>'; echo'</form>'; } ?>

    • ベストアンサー
    • PHP
  • メールフォームのPHPについて質問です。

    以下のようなメールフォームを作ったのですが何故か値の受け渡しが上手くいきません。 以前どこかのサイトを参考にして作ったもので別で自分の作ったサイトでは問題なく受け渡しができたのですが、なぜか今回はできません。 自分が作って成功したサイトをそのままサーバーにアップロードしても出来ないのがよくわからないのです。 どうすれば受け渡しがうまくいくのでしょうか? どなたか知恵を分けていただきたいです。何卒よろしくお願いいたします。 ▼ここからinquiry.html▼ <div id="main_inquiry"> <div id="box_inquiry"> <h1>お問い合わせ</h1> <div id="form"> <form method="POST" action="inquiry_check.php"> <p class="form">お名前</p> <p class="text"><input type="text" name="name" size="50"><br></p> <p class="form">電話番号</p> <p class="text"><input type="text" name="tel" size="50"><br></p> <p class="form">Eメール</p> <p class="text"><input type="text" name="email" size="50"></p><br> <p class="form">備考</p> <p class="text"><textarea name="bikou" cols="50" rows="10"></textarea></p> </div> <!---------form-END------------------------------> <div id="submit"> <input type="submit" value="確認" class="submit"> <input type="reset" value="リセット" class="reset"> </div> <form method="POST" action="inquiry_check.php"> </div> ▲inquiry.html終了▲ ▼ここからinquiry_check.php▼ <div id="box_check"> <h1 class="headding11">問い合わせチェック</h1> <?php $name=htmlspecialchars($_POST["name"]);// if ($name == ""){ $show_name = "<font color='#000'><strong>名前が入力されていません</font></strong>"; $err_flg = 1; } else { $show_name = $name; } $tel=htmlspecialchars($_POST["tel"]);// if ($tel == ""){ $show_tel = "<font color='#000'><strong>電話番号が入力されていません</font></strong>"; $err_flg = 1; } else { $show_tel = $tel; } $email=htmlspecialchars($_POST["email"]);// if ($email == ""){ $show_email = "<font color='#000'><strong>e-mailが入力されていません</font></strong>"; $err_flg = 1; } else { $show_email = $email; } $bikou=htmlspecialchars($_POST["bikou"]);// if ($bikou == ""){ $show_bikou = "<font color='#000'><strong>備考が入力されていません</font></strong>"; $err_flg = 1; } else { $show_bikou = $bikou; } if ($err_flg == 1){ $show_form = ""; } else { $show_form = " <input name='name' type='hidden' value='". $name ."'> <input name='tel' type='hidden' value='". $tel ."'> <input name='email' type='hidden' value='". $email ."'> <input name='bikou' type='hidden' value='". $bikou ."'> <input name='submit' type='submit' value='送信' class='soushin'> "; } ?> <form name="mailform" method="post" action="inquiry_finish.php"> <P align="center"><b class="kakunin">お客様情報確認</b></P> <table class="check" width="685px" border="0" cellspacing="1" cellpadding="5"> <tr> <td bgcolor="#EBEBEB" width="200"> 氏名</td> <td width="540"><? echo $show_name ?></td> </tr> <tr> <td bgcolor="#EBEBEB"> 電話番号<font color="#FFFFFF">  </font></td> <td><? echo $show_tel ?></td> </tr> <tr> <td bgcolor="#EBEBEB"> 電子メール</td> <td ><? echo $show_email ?></td> </tr>  <tr> <td bgcolor="#EBEBEB"> お問い合わせ内容</td> <td ><? echo $show_bikou ?></td> </tr> </table> <div align=""> <? echo $show_form ?> <input name="submit" type="button" value="戻る" class="mouse" onClick="history.back()"> </div> </div> <div id="side_menu_check"> </div> </div> <div id="footer"> </div> ▲inquiry_check.php終了▲

    • ベストアンサー
    • PHP
  • メールフォームについて

    この中にどのような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
  • htmlファイルからphpファイルへの値の受け渡し

    表を使った問い合わせフォームを作成したのですが、データを受け渡す方法がわかりません!! 初めの問い合わせページは以下のようにhtmlファイルで記述しました。 この場合、次のページにデータを引き渡すphpファイルには、どうのような記述をしたら良いのでしょうか? <form method="post" action="info.php"> <table class="table margin01" width="592" border="0" cellpadding="0" cellspacing="0"> <tr> <td width="190" align="left" bgcolor="#FFF09D">お名前 <span class="tabletext1">※必須</span></td> <td><input name="name" type="text" class="form01" id="name" /><br /> 入力例:山田 太郎 </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス <span class="tabletext1">※必須</span></td> <td><input name="mail" type="text" class="form01" id="mail" /><br /> 入力例:●●●●●●@yamada.co.jp </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">メールアドレス(確認) <span class="tabletext1">※必須</span></td> <td><input name="mail2" type="text" class="form01" id="mail2" /></td> </tr> <tr> <td align="left" bgcolor="#FFF09D">お問い合せ内容 <span class="tabletext1">※必須</span></td> <td> <select name="list" id="list"> <option>お問い合せ内容をお選びください</option> <option>事業内容について</option> <option>求人について </option> <option>その他</option> </select> </td> </tr> <tr> <td align="left" bgcolor="#FFF09D">内容 <span class="tabletext1">※必須</span></td> <td><textarea name="content" id="内容" cols="45" rows="5"></textarea></td> </tr> </table> <p align="center" class="margin01"> <input type="reset" value="クリア" /> <input type="submit" value="送信内容を確認する" /> </p> <input type="hidden" name="test" value="cloud" /> </form>

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

    お世話になります。メールフォームを作成して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
  • 【フォーム】PHPで確認画面をだした後にボタンを

    ほぼ初心者のものです 下記のようなフォームをつくりました <form action="regist.php" method="post"> <input type="radio" name="08241" value="A11"/> <input type="radio" name="08241" value="B11"/> <input type="radio" name="08241" value="C11"/> <input type="radio" name="08241" value="D11"/> <input type="radio" name="08241" value="E11"/> <input type="radio" name="08241" value="F11"/> <input type="submit" value="登録する" /> そしてこれらを確認するためにregist.phpを作成し <table width="250" border="1"> <tr> <td width="250">選択したもの</td> </tr> <tr> <td><?php echo $_POST["08241"] ?></td> </tr> <tr> <td>●●●</td> と記載し、選んだものを表示できるようにしました ここからが皆様にお力を借りたいところなのですが フォームから「A11」が選択されて確認画面に「A11」と表示されたとき ●●●のところに下記のような情報を含んだボタンを表示させたいんです <form name="a11" action="/products/detail.php" method="post" > <input type="hidden" name="mode" value="cart" /> <input type="hidden" name="product_id" value="137" /> <input type="hidden" name="product_class_id" value="634" /> <input type="hidden" name="quantity" value="1" /><br /> <input type="submit" value="決定する" onClick="alert('選択しました')" /> </form> このボタン情報はA11~F11まであって、product_idやproduct_class_idは それぞれ異なっています どこかに一覧を作成しておいて form nameで一致したものを表示させるといった やり方なのかなとは思うのですが、その方法がわかりません PHPを使えばいいのかJavascriptがよいのかもあわせ、記述方法などをご教授いただけませんでしょうか? どうかよろしくお願いいたします

    • 締切済み
    • PHP
  • PHPで問い合わせフォーム 受信すると文字化けする

    フォーム⇒ (1)確認  ⇒ (2)送信 と3つに分けて、phpファイルに書きました。 ためしに、送信してみると、成功はするものの、文字が化けてメールの内容が分かりません。 分からないので教えてください。 フォーム ↓ <form method="POST" action="kakunin.php"> <table border="0"> <tr> <td >お名前</td> <td><input type="text" name="name" size="20"></td> </tr> <tr> <td>メールアドレス</td> <td><input type="text" name="from" size="20"></td> </tr> <tr> <td>メールタイトル</td> <td><input type="text" name="title" size="20"></td> </tr> <tr> <td>メッセージ</td> <td><textarea rows="5" name="naiyou" cols="40"></textarea></td> </tr> <tr> <td colspan="2"><input type="submit" value=" お問い合わせ内容を確認 "></td> </tr> </table> </form> (1) kakunin.php ↓ 入力フォームから情報を受け取り確認 <?php // フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ // 「magic_quotes_gpc = On」のときはエスケープ解除 if (get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); } // 値をチェックします。 $ErrFlg = 0; if ($name == "") { echo "<p>お名前を入力してください。"; $ErrFlg = 1; } if ($from == "") { echo "<p>メールアドレスを入力してください。"; $ErrFlg = 1; } if ($title == "") { echo "<p>メールタイトルを入力してください。"; $ErrFlg = 1; } if ($naiyou == "" ) { echo "<p>メッセージを入力してください。"; $ErrFlg = 1; } if ($ErrFlg) { exit(); } ?> 内容を確認して送信ボタンをクリックしてください <form method="POST" action="mail.php"> <table border="0"> <tr> <td width="100">お名前</td> <td width="300"><?php echo $name?></td> </tr> <tr> <td width="100">メールアドレス</td> <td width="300"><?php echo $from?></td> </tr> <tr> <td width="100">メールタイトル</td> <td width="300"><?php echo $title?></td> </tr> <tr> <td width="100">メッセージ</td> <td width="300"><?php echo nl2br($naiyou) ?></td> </tr> <tr> <td colspan="2"><input type="submit" value="送信"></td> </tr> </table> <input type="hidden" name="name" value="<?php echo $name ?>"> <input type="hidden" name="from" value="<?php echo $from ?>"> <input type="hidden" name="title" value="<?php echo $title ?>"> <input type="hidden" name="naiyou" value="<?php echo $naiyou ?>"> </form> (2) mail.php ↓のコード 送信 <?php // メール送信先を指定します。 $to = "xxxxxxxxxx■ gmail.com"; // フォームの値を取得します。 if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach($_POST as $k => $v){ // 「magic_quotes_gpc = On」のときはエスケープ解除 if (get_magic_quotes_gpc()) { $v = stripslashes($v); } $v = htmlspecialchars($v); $$k = $v; } } else { exit(); } // メール本文を組み立てます。 $naiyou = "お名前:$name\n メールアドレス:$from\n タイトル:$title\n 内容:$naiyou\n"; if ($name != "" and $from != "" and $title != "" and $naiyou != "" ) { if (mb_send_mail($to, $title, $naiyou, "From:$from")) { echo "メールを送信しました"; } else { echo "メール送信失敗です"; } } ?>

    • ベストアンサー
    • PHP
  • フォームで確認画面を表示させるにはどうすればいいのでしょうか?

    質問をご覧下さりありがとうございます。 <form action="18add.php" method="POST" name="form1"> <table> <tr> <th>番号(半角数字)</th> <td><input type="text" name="number" value=""></td> </tr> <tr> <th>名前</th> <td><input type="text" name="name" value=""></td> </tr> <tr> <td><input type="hidden" name="mode" value="add"></td> <td><input type="submit" name="submit" value="追加"></td> </tr> </table> </form> htmlでこんなフォームを作り、phpで $table_body = ""; if( isset( $_POST['mode'] ) ){ $mode = $_POST['mode']; $number = $_POST['number']; $name =$_POST['name']; } else{ $mode = ""; $number = ""; $name = ""; } if( $mode == "add" ){ $table_body .= "<tr>"; $table_body .= "<td>"; $table_body .= $number; $table_body .= "</td>"; $table_body .= "<td>"; $table_body .= mb_convert_encoding( $name, "SJIS", "EUC-JP" ); $table_body .= "</td>"; $table_body .= "</tr>"; } で一度入力された情報を確認する画面を作りたいのですが うまくいきません。 初心者なのでわかりやすく説明をつけてくださると大変助かります。

    • 締切済み
    • PHP
  • PHPのお問い合わせフォームについて

    こんにちは、セレクトボックスの選択部分を変更するとフォームの内容が変わるというフォームを作っているんですが色々試しても何がどうおかしいのかわからないので質問させていただきます。 PHP初心者で触り始めて間もないのでわかりやすく教えてもらえると嬉しいです。 多分色々とおかしいことになってると思いますがよろしくお願いいたします。 【index.html】 <!doctype html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> fieldset{ border: none; } </style> <script type="text/javascript"> function setForm(ex) { var target = ex.value; var group = ex.form.getElementsByTagName("FIELDSET"); var i=0, fs; while(fs=group[i++]) fs.style.display = fs.id == target?"block":"none"; } </script> </head> <body> <form action="form.php" method="post"> <table> <tr> <td>用件</td> <td> <select name="select1" onchange="setForm(this)"> <option value="">選択してください</option> <option value="A">ご質問</option> <option value="B">資料請求</option> <option value="A">その他</option> </select></td> </tr> </table> <fieldset id="A"> <table> <tr> <td>お名前</td> <td><input type="text" name="name" value=""></td> </tr> <tr> <td>Mail</td> <td><input type="text" name="mail" value=""></td> </tr> <tr> <td>サイトを知ったきっかけ</td> <td><input type="checkbox" name="chance[0]" value="friend">知り合い <input type="checkbox" name="chance[1]" value="serch">検索エンジン<td> </tr> <tr> <td>ご質問内容</td> <td><textarea name="message" cols="60" rows="5"></textarea></td> </tr> </table> </fieldset> <fieldset id="B"> <table> <tr> <td>お名前</td> <td><input type="text" name="name" value=""></td> </tr> <tr> <td>Mail</td> <td><input type="text" name="mail" value=""></td> </tr> <tr> <td>性別</td> <td><input type="radio" name="gender" value="man">男 <input type="radio" name="gender" vakue="woman">女</td> </tr> <tr> <td>住所</td> <td><input type="text" name="address" value=""></td> </tr> </table> </fieldset> <input type="submit" value="送信する" /> </form> </body> </html> </html> 【form.php】 <!doctype html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <?php mb_language("japanese"); mb_internal_encoding("utf-8"); if(!empty($_POST['mail'])){ $to=$_POST['mail']; $name=$_POST['name']; $chance=$_POST['chance']; $message=$_POST['message']; $gender=$_POST['gender']; $address=$_POST['address']; $form=mb_encode_mimeheader(mb_convert_encoding("自分の名前","JIS","UTF-8"))."<aaa@aaa.com>"; $success=mb_send_mail($to,"名前:".$name."サイトを知ったきっかけ:".$chance."お問い合せ内容:".$messagge."性別:".$gender."住所:".$address,"from:".$from); } ?> <?php if ($success) { print('送信しました。'); } else { print('送信に失敗しました。'); } ?> </body> </html> よろしくお願いします!!!!

    • 締切済み
    • PHP
  • PHPとJSを使ったお問い合わせフォームについて

    こんにちは、セレクトボックスの選択部分を変更するとフォームの内容が変わるというフォームを作っているんですが色々試しても何がどうおかしいのかわからないので質問させていただきます。 PHPは特に触り始めて間もないのでわかりやすく教えてもらえると嬉しいです。 多分色々とおかしいことになってると思いますが出来るだけ分かりやすくよろしくお願いいたします。 【index.html】 <!doctype html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Document</title> <style type="text/css"> fieldset{ border: none; } </style> <script type="text/javascript"> function setForm(ex) { var target = ex.value; var group = ex.form.getElementsByTagName("FIELDSET"); var i=0, fs; while(fs=group[i++]) fs.style.display = fs.id == target?"block":"none"; } </script> </head> <body> <form action="form.php" method="post"> <table> <tr> <td>用件</td> <td> <select name="select1" onchange="setForm(this)"> <option value="">選択してください</option> <option value="A">ご質問</option> <option value="B">資料請求</option> <option value="A">その他</option> </select></td> </tr> </table> <fieldset id="A"> <table> <tr> <td>お名前</td> <td><input type="text" name="name" value=""></td> </tr> <tr> <td>Mail</td> <td><input type="text" name="mail" value=""></td> </tr> <tr> <td>サイトを知ったきっかけ</td> <td><input type="checkbox" name="chance[0]" value="friend">知り合い <input type="checkbox" name="chance[1]" value="serch">検索エンジン<td> </tr> <tr> <td>ご質問内容</td> <td><textarea name="message" cols="60" rows="5"></textarea></td> </tr> </table> </fieldset> <fieldset id="B"> <table> <tr> <td>お名前</td> <td><input type="text" name="name" value=""></td> </tr> <tr> <td>Mail</td> <td><input type="text" name="mail" value=""></td> </tr> <tr> <td>性別</td> <td><input type="radio" name="gender" value="man">男 <input type="radio" name="gender" vakue="woman">女</td> </tr> <tr> <td>住所</td> <td><input type="text" name="address" value=""></td> </tr> </table> </fieldset> <input type="submit" value="送信する" /> </form> </body> </html> </html> 【form.php】 <!doctype html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>Document</title> </head> <body> <?php mb_language("japanese"); mb_internal_encoding("utf-8"); if(!empty($_POST['mail'])){ $to=$_POST['mail']; $name=$_POST['name']; $chance=$_POST['chance']; $message=$_POST['message']; $gender=$_POST['gender']; $address=$_POST['address']; $form=mb_encode_mimeheader(mb_convert_encoding("自分の名前","JIS","UTF-8"))."<aaa@aaa.com>"; $success=mb_send_mail($to,"名前:".$name."サイトを知ったきっかけ:".$chance."お問い合せ内容:".$messagge."性別:".$gender."住所:".$address,"from:".$from); } ?> <?php if ($success) { print('送信しました。'); } else { print('送信に失敗しました。'); } ?> </body> </html> よろしくお願いします!!!!