2

ユーザーの国を検出するための次のコードを含む 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);直接ロードすると機能し、別のファイルに含めると送信される理由がわかりません。

私はそれを間違って含めていますか?何か案は?

ありがとう!

4

0 に答える 0