私のウェブサイトには、潜在的なクライアントが私に連絡するために使用するPHP電子メールスクリプトがあります。Stackから取得し、少し調整しました(ハニーポットがあります)。
PHPコード
<?php
$robotest = $_POST['robotest']; //just testin' for robots
$recipient = "info@agoodman.com.au"; //recipient
$email = ($_POST['email']); //senders e-mail adress
if((filter_var($email, FILTER_VALIDATE_EMAIL)) && ($robotest == "")) {
$Name = ($_POST['name']); //senders name
$mail_body = ($_POST['comments']); //mail body
$subject = "Image Consulting Inquiry"; //subject
$header = "From: ". $Name . " <" . $email . ">\r\n"; //optional headerfields
mail($recipient, $subject, $mail_body, $header); //mail command :)
} else {
print "You've entered an invalid email address!";
}
?>
フォームHTMLコード:
<form name="contactform" id="contactform" method="post" action="/contact/" _lpchecked="1">
<ul class="form-block">
<!-- HONEYPOT -->
<li class="on-no-robots" style="height:0px; text-indent:-9999px; font-size:0px; overflow:hidden;">
<label>Humans Don't Submit This!! If you can see this, you don't have CSS, and you scare me. This is just here to filter out automated comments!</label>
<input name="robotest" id="robotest" type="text" />
</li>
<!-- HONEYPOT -->
<li class="third">
<label for="name">Name</label>
<input type="text" name="name" id="name" value="" class="required" />
</li>
<li class="third">
<label for="email">Email Address</label>
<input type="email" name="email" id="email" value="" class="required email" />
</li>
<li class="third">
<label for="phone">Phone Number</label>
<input type="text" name="phone" id="phone" value="" />
</li>
</ul>
<h3>How can we help you?</h3>
<ul class="form-block">
<li class="full">
<textarea name="comments" id="comments" class="required"></textarea>
</li>
<li>
<input id="submitButton" type="submit" value="Talk to us" onclick="_gaq.push(['_trackEvent', 'Conversions', 'Contact', 'Contact Form']);" />
</li>
</ul>
</form>
また、次のように、フォームの[送信]ボタンでGoogleAnalyticsのイベントトラッキングを使用しています。
<input id="submitButton" type="submit" value="Talk to us" onclick="_gaq.push(['_trackEvent', 'Conversions', 'Contact', 'Contact Form']);" />
メールをテストできますが、問題なく動作します。しかし、私の分析を見ると、人々が「送信」ボタンをクリックした(分析イベントをトリガーした)数日がありますが、私は電子メールを受信していません。フォームに正しく記入されていないことが原因かもしれませんが、よくわかりません。Gmailのスパムフィルターには何もありません。
(a)正しく送信されていない「トラップされた」電子メールがあるかどうかをホストに確認し、(b)これらの誤検知(誤検知の場合)が発生しないようにコードを微調整する方法はありますか?発生しますか?
明らかに、最も単純な原因は、何も入力せずに「送信」ボタンをクリックするだけで、分析イベントがトリガーされることです。これらのコンバージョンはそれぞれ約1500ドルの価値があるので、メールで送信されない本物のコンバージョンではないことを可能な限り確認したいと思います。
みんな乾杯。