ユーザーの国を検出するための次のコードを含む PHP ファイルがあります。
<?php
// This code demonstrates how to lookup the country by IP Address
include("geoip/src/geoip.inc");
// Uncomment if querying against GeoIP/Lite City.
// include("geoipcity.inc");
$gi = geoip_open("geoip/src/GeoIP.dat", GEOIP_STANDARD);
$ip = $_SERVER['REMOTE_ADDR'];
if ( strpos($ip, ":") ) {
echo 'your country is ' . geoip_country_code_by_addr_v6($gi, $_SERVER['REMOTE_ADDR']);
}
else {
echo 'your country is ' . geoip_country_code_by_addr($gi, $_SERVER['REMOTE_ADDR']);
}
geoip_close($gi);
?>
ここでわかるように、直接ロードするとうまく機能しますhttp://de.wikiarquitectura.com/skins/mirlo/geoip/find_country.php
次に、次のコードを使用して最初のファイルを含めている別の PHP ファイルがありますがinclude("skins/mirlo/geoip/find_country.php");、それ自体をページにロードしたときに得られる同じ結果を挿入する代わりに、最初の部分 (IP 部分) のみを挿入し、ページを強制終了します。ロードし続けるのを防ぎます。ここで見ることができます: http://de.wikiarquitectura.com/index.php/Quelle_der_vier_Fl%C3%BCsse
コメントアウトすることで、上記のコードの7行目で問題が発生することをテストしましたが、$gi = geoip_open("geoip/src/GeoIP.dat", GEOIP_STANDARD);直接ロードすると機能し、別のファイルに含めると送信される理由がわかりません。
私はそれを間違って含めていますか?何か案は?
ありがとう!