私のPHPの連絡フォームが正しく動作していて、後続の電子メールに送信者のIPアドレスを含むすべての情報が出力されます。フォームが生成する電子メールに送信者の都市と州を受け取るためにPHPフォームをコーディングするのに問題があります。連絡先フォームの市/州のスニペットが必要
私はいくつかのコードスニペットを試しましたが、私が得られる最も多くのものは、フォームの上にあるWebページの都市と州の出力です。代わりに電子メールでそれが必要です。無料のサービスを探しています。
PHPフォーム
<?php
include 'contact_config.php';
session_start();
error_reporting (E_ALL^E_NOTICE);
$post = (!empty($_POST)) ? true : false;
if($post)
{
include 'functions.php';
$name = stripslashes($_POST['name']);
$email = trim($_POST['email']);
$level = stripslashes($_POST['level']);
$age = stripslashes($_POST['age']);
$drums = stripslashes($_POST['drums']);
$referral = stripslashes($_POST['referral']);
$city = json_decode(file_get_contents("http://ipinfo.io/{$ip}"));
$subject = " Website Inquiry";
$message = "
Name: ".$_POST['name']
."
E-mail Address: ".$_POST['email']
."
Level: ".$_POST['level']
."
Age: ".$_POST['age']
."
Drums: ".$_POST['drums']
."
Referral: ".$_POST['referral']
."
Message: ".$_POST['content']
."
City: ".$_POST['city']
."
IP Address: ". $_SERVER['REMOTE_ADDR'];
$error = '';
// Check name
if(!$name)
{
$error .= 'Please enter your name.<br />';
}
// Check email
if(!$email)
{
$error .= 'Please enter an e-mail address.<br />';
}
if($email && !ValidateEmail($email))
{
$error .= 'Please enter a valid e-mail address.<br />';
}
if(isset($_SESSION['captcha_keystring']) && strtolower($_SESSION['captcha_keystring']) != strtolower($_POST['captcha']))
{
$error .= "Incorrect captcha numbers.<br />";
}
if(!$error)
{
$mail = mail(WEBMASTER_EMAIL, $subject, $message,
"From: ".$name." <".$email.">\r\n"
."Reply-To: ".$email."\r\n"
."X-Mailer: PHP/" . phpversion());
if($mail)
{
echo 'OK';
}
}
else
{
echo '<div class="notification_error">'.$error.'</div>';
}
}
?>
'$ _POST ['city']'ではなく '$ city'を使用します。あなたがそれを出力できるなら、それを送ることができるはずです。 – chris85
_「無料サービスを探しています」_間違った場所では、私たちは無料のコーディングサービスではありません。 – Epodax
Stackoverflowコーダーは、無料と有料の両方のロケーションサービスについて議論するこの問題の助けとなりました。しかし、ほとんどのすべての投稿は、場所の出力をフォームを含むWebページに送信し、フォームによって生成された電子メールは送信しませんでした。 – Lenny