HTMLを使用してメール送信フォームを作成するには、以下の手順に従ってください。ただし、これは非常に基本的な例であり、実際の運用にはセキュリティ上の検討事項があります。
例えば、このままではメールの送信元が偽装されやすいため、サーバーサイドでのバリデーションやセキュリティ対策が必要です。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>メール送信フォーム</title>
</head>
<body>
<h1>お問い合わせフォーム</h1>
<form action="mailto:your-email@example.com" method="post" enctype="text/plain">
<label for="name">お名前:</label>
<input type="text" id="name" name="name" required>
<label for="email">メールアドレス:</label>
<input type="email" id="email" name="email" required>
<label for="message">お問い合わせ内容:</label>
<textarea id="message" name="message" rows="4" required></textarea>
<input type="submit" value="送信">
</form>
</body>
</html>
このコードでは、<form>
タグの action
属性にメールを送信する先のメールアドレスを指定しています。ただし、この方法はセキュリティ上のリスクがあるため、本番環境ではサーバーサイドのスクリプトを使用してメールの送信を行うことが推奨されます。
サーバーサイドの処理 (PHPの例)
PHPを使用して、フォームのデータをメールで送信する簡単なサーバーサイドスクリプトの例を示します。
<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$name = $_POST["name"];
$email = $_POST["email"];
$message = $_POST["message"];
$to = "your-email@example.com";
$subject = "お問い合わせがありました";
$headers = "From: $email";
mail($to, $subject, $message, $headers);
}
?>
このサーバーサイドスクリプトは、フォームがPOSTされたときにメールを送信します。ただし、この例では mail
関数を使用しているため、実際のサーバーで動作させるには、適切なメールサーバーの設定が必要です。また、セキュリティ上の理由から、入力データのバリデーションやエスケープ処理などが必要です。
注意: これは単なる基本的な例であり、実際のウェブサイトで使用する前に十分なセキュリティ対策を講じる必要があります。