2017-02-24 4 views
-2

私は、ユーザーが米国、英国、CA(Tier1としてラベル付けされている)からモバイルまたはデスクトップから接続されている場合、そのような地域のユーザーをリダイレクトするPHPスクリプトを持っています。他のページにリダイレクトします。 私は、ip2geoサイトの1つからダウンロードした内部ipデータベースを使用してジオ検証を行っています。データベースはうまくいきます。最大0.2秒で365k行のクエリを実行すると、モバイル検出はこのクラスを使用して行われます。http://mobiledetect.net/主な問題は、私がスクリプトを実行しているときに、何らかの形でユーザーが迷子になることです。クリック数の40%が何らかの形でソースに到達していないようです。 cpanelからリダイレクト(通常はすべてのユーザが同じページにリダイレクトされています)を正常に実行していても、ヘッダ( "Location:")を使用しないと、コードにエコーはありません。PHPのヘッダ( "場所:");

include ("Mobile_Detect.php"); 
ob_start(); 
$ip=$_SERVER['REMOTE_ADDR']; 
date_default_timezone_set("America/New_York"); 
$date = date("Y-m-d"); 
$hour = date("G"); 

$detect = new Mobile_Detect(); 
if ($detect->isMobile()) 
    $browser = "Mobile"; 
else 
    $browser = "Desktop"; 

$mysqli = new mysqli($servername, $username, $password, $dbname); 
$countryCode = getCountry(); 
$unique = checkuniqueip($ip); 
$getTier = getCountryTier(); 
$CountryTier = $getTier['countryTier']; 
trackvisitors(); 
redirect(); 

、ここでリダイレクト機能である:

<?php 
function redirect(){ 
    global $browser; 
    global $hour; 
    global $ip; 
    global $date; 
    global $mysqli; 
    global $CountryTier; 
    $redirectTo = $mysqli->query("SELECT OFFERLINK, AFFLINK FROM Links1 WHERE Tier = '$CountryTier' AND BROWSER = '$browser'"); 
    while($row = $redirectTo->fetch_assoc()){ 
     $result = $row['AFFLINK']; 
     $result1 = $row['OFFERLINK']; 
    } 
    $sql = $mysqli->query("UPDATE UniqueIp 
SET LINKREDIRECTED = '$result1' 
WHERE IP = '$ip' 
AND DATE = '$date' 
AND HOUR = '$hour' 
AND BROWSER = '$browser'"); 
    $mysqli->close(); 
    header("Location: ".$result); 
} 
?> 
+1

に動作しますエラーとは何ですか? –

+1

あなたの 'redirect()'はあなたの '$ redirectTo/Links1'クエリに一致する行があるかどうかに依存しているようです。すべての 'redirect()'呼び出しが '$ row ['AFFLINK'];' value?一致する行がない場合に備えて、デフォルトの '$ result'値を入れることをお勧めします。 – JustBaron

+0

@AlexLucaci質問に答えたときにコメントに返信し、質問を受け入れるか、投票の回答を受け入れるのは良い形式です;) – JustBaron

答えて

1

これはあなたのため

header("Location: ".$result); 
die; 
+0

これまでのところ最高の解決策だが、私はそれが完全に機能しているとは思わないが、今は10-15%の訪問者しか失っていない。 –

関連する問題