MySQL の Newsletter_ip フィールドは、UNSIGNED INT (10) として設定されます。データをフォーマットするために INET_ATON も試しましたが、結果は常に次のようになります。
ここに私の処理コードの一部があります:
//Retrieve data from user and create variables
$ip_orig = $_SERVER['REMOTE_ADDR'];
$ip = ip2long($ip_orig);
//Place into database
$sql = "INSERT INTO newsletter(newsletter_email, newsletter_ip, newsletter_date, newsletter_time) VALUES('".$email."', '".$ip."', '".$date."', '".$time."')";
また、ip2longフォーマットの前にこのスニペットを試しましたが、役に立ちませんでした:
if (!empty($_SERVER['HTTP_CLIENT_IP'])){
$ip=$_SERVER['HTTP_CLIENT_IP'];
}elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])){
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];
}else{
$ip=$_SERVER['REMOTE_ADDR'];
}
どんな助けでも大歓迎です、ありがとう!