私が取り組んでいるウェブサイトに連絡先フォームを設定しようとしています。コードは次のようになります。
<form action="contact.php" method="POST">
<ul>
<li>
<label for="name">Name:</label><br>
<input type="text" name="name" />
</li>
<br>
<li>
<label for="email">E-mail:</label><br>
<input type="email" name="email" />
</li>
<br>
<li>
<div id="label">Enquiry:</div>
<select name="interest"><br>
<option value="Wedding">Wedding</option>
<option value="Engagement/Couple">Engagement or Couple</option>
<option value="Portrait">Portrait</option>
<option value="Family">Family</option>
<option value="Children">Children</option>
</select>
</li>
<br>
<li>
<label for="message">Message:</label><br>
<textarea name="message" cols="40" rows="6"></textarea>
</li>
<br>
<li>
<button class="submit" type="submit" value="Submit">Submit Form</button>
</li>
</ul>
</form>
もともと私はフォームアクションを mailto:myemail@example.com として持っていましたが、ユーザーがメールアプリケーションを開くだけでなく、フォームを送信してメールを送信することを明らかに望んでいます。これを行うための PHP スクリプトを作成しようとしていますが、まだ運がありません。おそらく、PHP を見るのはこれが初めてであり、ましてや書き込もうとすることは言うまでもありません。
私は多くの異なる例を見て、助けを求めてPHPマニュアルを掘り下げましたが、何を書いても同じ結果になり、フォームの送信ボタンを押しても受信トレイに何も受信しません。そこで、問題の特定に役立てるために、ある種の障害発見プロセスを開始しました。私は非常に基本的な PHP スクリプトから始めて、それぞれにさらに追加を試み、どこが壊れているかを確認しました。
以下のように、フォーム アクションを php テスト スクリプトに変更することから始めました。
<?php
phpinfo() ;
?>
これは正常に機能し、php 情報ページが正常に表示されました。私のホストがphpをサポートしていて、それがインストールされていることを知っています。これは問題ではありません。次に、フォーム アクションを以下のコードに変更しました。
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php echo '<p>Hello World</p>'; ?>
</body>
</html>
また、Hello World パラグラフを表示して、期待どおりに機能しました。この後、私が考えることができる最も基本的なphpメールスクリプトを試みました。これは次のようになりました。
<html>
<head>
<title>PHP Test</title>
</head>
<body>
<?php
mail('myemail@example.com', 'Contact Form', 'This is a test');
?>
</body>
</html>
フォームの送信ボタンを押すと、ブラウザのアドレスバーにphpスクリプトのURLを含む空白のページが表示され、これから電子メールを受信していません。受信箱にもジャンク フォルダにも、どこにもありません。これは非常に単純なスクリプトであるため、最初に 2 つの考え方があります。1 は、非常に基本的な間違いをしているだけであり、php に関する知識が非常に限られていることを考えると、その可能性が高いということです。2 は、もっと複雑なことが起こっているということです。私のホストの php 設定が、私がやろうとしていることに対して正しくないのでしょうか? 知らない。
この質問が非常に長くなってしまったことをお詫び申し上げます。これまでに行ったことをお見せしたかっただけです。私の問題について何か助けていただければ幸いです。ありがとうございます。