こちらのサイト
http://www.kanda-it-school.com/sample/php/seminar/php_seminar_sample_code/index.php
を参考に、ひとまず簡単なコンタクトフォームのポートフォリオを作成し、
下記のコードを軽く動作させました。
そこでまず4つの疑問が出ましたので、助言をいただきたいです。
###・メールアドレス等を正規表現でチェックをいれたほうがいい?
上記の通りです。
###・空メールか、その他何かしらの嫌がらせができるかもしれない
今更こんな嫌がらせがあるのかどうか疑問ですが、必要なら対策方法を教えていただきたいです。
###・send.phpの送信元メールアドレス変換等に違和感あり
send.phpのコメントにしているあたりで、問い合わせ発信者の方に
わざわざメールアドレスを返すことと、問い合わせされた方に返すメールのはずなのに$nameでなく、$fromEmailを作って「お問い合わせテスト」を設定する意味が分かりません。
ぼくの解釈がおかしいのでしょうか?アドバイスをください。
###・send_done.phpの内容確認に、横幅を指定したい
ひたすら縦横いっぱいになるくらいコピペで文字を入力したら、
ブラウザの縦横比を動かすとその横幅を目一杯使って見た目が崩れてしまいます。
textareaのmax/min指定のようなことをする方法を教えていただきたいです。
contact.php
<!DOCTYPE html> <head> <meta charset="UTF-8"> <title>Contact form</title> </head> <body> <style type="text/css"> button.button8{ -moz-border-radius:8px; -webkit-border-radius:8px; border-radius:8px; } input.textbox { -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; width:300px; } TEXTAREA { -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; min-width: 300px; max-width:400px; min-height:200px; max-height:300px; } </style> <form action="send.php" method="post"> Name:<br /><input type="text" class="textbox" name="name" placeholder="お名前"><br /> Address:<br /><input type="text" class="textbox" name="address" placeholder="メールアドレス"><br /> Inquiry:<br /><TEXTAREA placeholder="お問合せ内容" name="inquiry"></TEXTAREA><br /> <button class="button8">送信</button> </form> <?php ?> </body> </html>
send.php
<?php if($_SERVER["REQUEST_METHOD"]=="POST") { $name=$_POST["name"]; $address=$_POST["address"]; $inquiry=$_POST["inquiry"]; } if(isset($_POST["submit"])) { mb_language("ja"); mb_internal_encoding("UTF-8"); } if(isset($_POST["submit"])){ mb_language("ja"); mb_internal_encoding("UTF-8"); $subject="[自動返信]お問い合わせ内容の確認"; $body=<<<EOM {$name}様 お問い合わせありがとうございます。 以下のお問い合わせ内容の確認メールをお送りしました。 =============================================== 【お名前】 {$name} 【内容】 {$inquiry} =============================================== 内容を確認の上回答させていただきますので、 しばらくお待ちください。 EOM; $fromEmail="example.com";//送信元のメールアドレス変換? $fromName="お問い合わせテスト";//送信元の名前を変換 $header="From:".mb_encode_mimeheader($fromName)."<{$fromEmail}>"; mb_send_mail($address,$subject,$body,$header); header("Location:send_done.php"); exit; } ?> <style type="text/css"> input,button{ -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; } </style> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>ContactForm</title> </head> <body> <div><h1>CompanyName</h1></div> <!-- <div><h2>お問い合わせ</h2></div> --> <form action="send_done.php" method="post"> <input type="hidden" name="name" value="<?php echo $name; ?>"> <input type="hidden" name="address" value="<?php echo $address?>"> <input type="hidden" name="inquiry" value="<?php echo $inquiry; ?>"> <h1 class="contact-title">お問い合わせ内容確認</h1> <p>お問い合わせ内容はこちらでよろしいでしょうか?<br> よろしければ送信ボタンを押してください。</p> <div> <div> <label>お名前</label> <p><?php echo $name; ?></p> </div> <div> <label>メールアドレス</label> <p><?php echo $address?></p> </div> <div> <label>内容</label> <p><?php echo nl2br($inquiry); ?></p><!-- ? --> </div> </div> <input type="button" value="修正" onclick="history.back(-1)"> <button type="submit" name="submit">送信</button> </form> </body> </html>
send_done.php
<style type="text/css"> button{ -moz-border-radius:6px; -webkit-border-radius:6px; border-radius:6px; } </style> <!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>ContactForm</title> </head> <body> <div><h1>CompanyName</h1></div> <div> <h1 class="contact-title">お問い合わせ送信完了</h1> <p> お問い合わせありがとうございました。<br> 内容を確認の上回答させていただきます。<br> しばらくお待ちください。 </p> <a href="contact.php"> <button type="button">お問い合わせに戻る</button> </a> </div> </div> <body> </html>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/07/23 10:03
退会済みユーザー
2017/07/23 10:17
退会済みユーザー
2017/07/23 10:24
退会済みユーザー
2017/07/23 10:28
退会済みユーザー
2017/07/23 10:34
退会済みユーザー
2017/07/23 10:42
退会済みユーザー
2017/07/23 10:54