-1

経験を積んだ後、初めてPHP開発を開始しています。そして、友人の要求に応じてスクリプトをコーディングしました。

ここにスクリプトがありますが、サーバーで実行できません。

<?php

  include("geoip.inc");
$ip=$_SERVER['REMOTE_ADDR'];
$gi = geoip_open("GeoIP.dat",GEOIP_STANDARD);

$country_code = geoip_country_code_by_addr($gi, "$ip");

// Country name is not used so commented
// Get Country Name based on source IP
//$country = geoip_country_name_by_addr($gi, "$ip");
$real=false;
geoip_close($gi);

{if ($_SERVER[’HTTP_USER_AGENT’]!= “Googlebot”)
{if ($_COOKIE['iwashere'] != "yes") 
  {setcookie("iwashere", "yes", time()+315360000); 
  if ($country_code="US")
{
    if(preg_match("/google\.com(.+?)sa=(.+?)/", $_SERVER['HTTP_REFERER']))
    include_once("Biggenius.htm");
    else
    $real=True;
};
else
$real=True;

};

}
else
$real=True;};

if ($real==True)
 include_once(Biggenius1.htm);
?php>

このスクリプトは実行されていません。また、学習したいと思います。はるかに簡単な方法でコーディングする方法。これをコーディングする代替の効率的なスタイルはありますか?

エラーを指摘する人もいますが、まだ解決できていません。エラーなしでコード全体を投稿してください。エラーだけを投稿する代わりに。よろしく

4

4 に答える 4

0

次のことが 3 回発生しています。

};

次のように変更する必要があります。

}

また、スクリプトにさらにエラーがある可能性があります。エラー メッセージが役立つ場合があります。

于 2012-04-30T14:14:05.527 に答える
0

括弧を移動したいでしょう:

if ($_SERVER[’HTTP_USER_AGENT’] !=  “Googlebot”) { 
    //Do stuff
}

括弧はif条件の後に続くので、if (condition) { code }. 多くの場所でこれを正しく行いましたが、すべてではありません。特定の行番号については、エラー PHP 出力を参照してください。

于 2012-04-30T14:14:16.870 に答える
0

また、終了タグが{ //code }無効です。純粋な php ファイルの場合は、終了タグを省略できます。{ //code };?php>?>

于 2012-04-30T14:17:16.477 に答える
0

あなたのコードには構文エラーがたくさんあります! これがクリーンアップされたバージョンです。

<?php

  include("geoip.inc");
$ip=$_SERVER['REMOTE_ADDR'];
$gi = geoip_open("GeoIP.dat",GEOIP_STANDARD);

$country_code = geoip_country_code_by_addr($gi, "$ip");

// Country name is not used so commented
// Get Country Name based on source IP
//$country = geoip_country_name_by_addr($gi, "$ip");
$real=false;
geoip_close($gi);

if ($_SERVER['HTTP_USER_AGENT']!= 'Googlebot') {
    if ($_COOKIE['iwashere'] != "yes")  {
        setcookie("iwashere", "yes", time()+315360000); 
        if ($country_code="US") {
            if(preg_match("/google\.com(.+?)sa=(.+?)/", $_SERVER['HTTP_REFERER'])) {
                include_once("Biggenius.htm");
            } else {
                $real = true;
            }
        } else {
            $real = true;
        }
    }
} else {
    $real = true;
}

if ($real) {
    include_once('Biggenius1.htm');
}

?>
于 2012-04-30T14:17:20.550 に答える