رفتن به مطلب

عدم نمایش باکس دانلود برای آیپی های خارج از ایران


پست های پیشنهاد شده

با عرض سلام و خسته نباشید خدمت دوستان و مهندسان عزیز

دوستان من سایت دانلود فیلم دارم و برای باکس دانلودش از ضمینه های دلخواه استفاده میکنم و به این شکل لینک دانلود فیلم هارو قرار میدم، اما جدیدا به مشکلی خوردم که از طرف گوگل وبمستر بخاطر قوانین کپی رایت داره یکسری از لینکهامو از صفحات سرچ حذف میکنه، با خودم فکر کردم گفتم اگر بتونم کاری کنم که فقط قسمت باکس دانلود سایتم برای آی پی های خارج از ایران نمایش داده نشه و مثلا بجاش بنویسه "برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید" میخواستم از شما کمک بگیرم که چطور میتونم اینکارو انجام بدم خیلی تو اینترنت سرچ کردم خودم اما نتونستم چیزی پیدا کنم ما همیشه اینجا مهندسین عزیزی بودن که وقتی به این مشکل ها میخوردم کمکم کردن ممنون میشم اگر کمک کنید.
دست همتون درد نکنه.

لینک به ارسال
در 16 ساعت قبل، 1563 گفته است :

با عرض سلام و خسته نباشید خدمت دوستان و مهندسان عزیز

دوستان من سایت دانلود فیلم دارم و برای باکس دانلودش از ضمینه های دلخواه استفاده میکنم و به این شکل لینک دانلود فیلم هارو قرار میدم، اما جدیدا به مشکلی خوردم که از طرف گوگل وبمستر بخاطر قوانین کپی رایت داره یکسری از لینکهامو از صفحات سرچ حذف میکنه، با خودم فکر کردم گفتم اگر بتونم کاری کنم که فقط قسمت باکس دانلود سایتم برای آی پی های خارج از ایران نمایش داده نشه و مثلا بجاش بنویسه "برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید" میخواستم از شما کمک بگیرم که چطور میتونم اینکارو انجام بدم خیلی تو اینترنت سرچ کردم خودم اما نتونستم چیزی پیدا کنم ما همیشه اینجا مهندسین عزیزی بودن که وقتی به این مشکل ها میخوردم کمکم کردن ممنون میشم اگر کمک کنید.
دست همتون درد نکنه.

سلام

وقت بخیر

اول از همه یک بکاپ از فایل functions.php قالبتون تهیه کنید و بعد این کد رو به انتهای فایل و قبل از بسته شدن تگ php، قرار بدید :

function ip_info($ip = NULL, $purpose = "location", $deep_detect = TRUE) {
    $output = NULL;
    if (filter_var($ip, FILTER_VALIDATE_IP) === FALSE) {
        $ip = $_SERVER["REMOTE_ADDR"];
        if ($deep_detect) {
            if (filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP))
                $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
            if (filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP))
                $ip = $_SERVER['HTTP_CLIENT_IP'];
        }
    }
    $purpose    = str_replace(array("name", "\n", "\t", " ", "-", "_"), NULL, strtolower(trim($purpose)));
    $support    = array("country", "countrycode", "state", "region", "city", "location", "address");
    $continents = array(
        "AF" => "Africa",
        "AN" => "Antarctica",
        "AS" => "Asia",
        "EU" => "Europe",
        "OC" => "Australia (Oceania)",
        "NA" => "North America",
        "SA" => "South America"
    );
    if (filter_var($ip, FILTER_VALIDATE_IP) && in_array($purpose, $support)) {
        $ipdat = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip));
        if (@strlen(trim($ipdat->geoplugin_countryCode)) == 2) {
            switch ($purpose) {
                case "location":
                    $output = array(
                        "city"           => @$ipdat->geoplugin_city,
                        "state"          => @$ipdat->geoplugin_regionName,
                        "country"        => @$ipdat->geoplugin_countryName,
                        "country_code"   => @$ipdat->geoplugin_countryCode,
                        "continent"      => @$continents[strtoupper($ipdat->geoplugin_continentCode)],
                        "continent_code" => @$ipdat->geoplugin_continentCode
                    );
                    break;
                case "address":
                    $address = array($ipdat->geoplugin_countryName);
                    if (@strlen($ipdat->geoplugin_regionName) >= 1)
                        $address[] = $ipdat->geoplugin_regionName;
                    if (@strlen($ipdat->geoplugin_city) >= 1)
                        $address[] = $ipdat->geoplugin_city;
                    $output = implode(", ", array_reverse($address));
                    break;
                case "city":
                    $output = @$ipdat->geoplugin_city;
                    break;
                case "state":
                    $output = @$ipdat->geoplugin_regionName;
                    break;
                case "region":
                    $output = @$ipdat->geoplugin_regionName;
                    break;
                case "country":
                    $output = @$ipdat->geoplugin_countryName;
                    break;
                case "countrycode":
                    $output = @$ipdat->geoplugin_countryCode;
                    break;
            }
        }
    }
    return $output;
}

حالا باید در قالب به فایلی که باکس دانلود رو در اون قرار دادید برید و کدهای باکس دانلود رو درون این قطعه کد قرار بدید :

<?php
if ( ip_info($_SERVER['REMOTE_ADDR'], 'country') == 'Iran' ) {

         // کدهای باکس دانلود را در اینجا قرار دهید

} else {

?>

<div style='padding: 20px; border: 1px solid lightgray; border-radius: 10px; text-align: center;'>
  برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید
</div>

<?php

}

?>

دقت کنید کد بالا به زبون php هست و باید در هنگام جایگذاری کدهای باکس دانلود دقت کنید که با هم تداخلی از لحاظ سینتکس نداشته باشن.

  • پسندیدن 1
  • تشکر 1
لینک به ارسال
در در ۱۴۰۰/۱۰/۱۳ در 12:26، محسن عواطفی گفته است :

سلام

وقت بخیر

اول از همه یک بکاپ از فایل functions.php قالبتون تهیه کنید و بعد این کد رو به انتهای فایل و قبل از بسته شدن تگ php، قرار بدید :


function ip_info($ip = NULL, $purpose = "location", $deep_detect = TRUE) {
    $output = NULL;
    if (filter_var($ip, FILTER_VALIDATE_IP) === FALSE) {
        $ip = $_SERVER["REMOTE_ADDR"];
        if ($deep_detect) {
            if (filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP))
                $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
            if (filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP))
                $ip = $_SERVER['HTTP_CLIENT_IP'];
        }
    }
    $purpose    = str_replace(array("name", "\n", "\t", " ", "-", "_"), NULL, strtolower(trim($purpose)));
    $support    = array("country", "countrycode", "state", "region", "city", "location", "address");
    $continents = array(
        "AF" => "Africa",
        "AN" => "Antarctica",
        "AS" => "Asia",
        "EU" => "Europe",
        "OC" => "Australia (Oceania)",
        "NA" => "North America",
        "SA" => "South America"
    );
    if (filter_var($ip, FILTER_VALIDATE_IP) && in_array($purpose, $support)) {
        $ipdat = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip));
        if (@strlen(trim($ipdat->geoplugin_countryCode)) == 2) {
            switch ($purpose) {
                case "location":
                    $output = array(
                        "city"           => @$ipdat->geoplugin_city,
                        "state"          => @$ipdat->geoplugin_regionName,
                        "country"        => @$ipdat->geoplugin_countryName,
                        "country_code"   => @$ipdat->geoplugin_countryCode,
                        "continent"      => @$continents[strtoupper($ipdat->geoplugin_continentCode)],
                        "continent_code" => @$ipdat->geoplugin_continentCode
                    );
                    break;
                case "address":
                    $address = array($ipdat->geoplugin_countryName);
                    if (@strlen($ipdat->geoplugin_regionName) >= 1)
                        $address[] = $ipdat->geoplugin_regionName;
                    if (@strlen($ipdat->geoplugin_city) >= 1)
                        $address[] = $ipdat->geoplugin_city;
                    $output = implode(", ", array_reverse($address));
                    break;
                case "city":
                    $output = @$ipdat->geoplugin_city;
                    break;
                case "state":
                    $output = @$ipdat->geoplugin_regionName;
                    break;
                case "region":
                    $output = @$ipdat->geoplugin_regionName;
                    break;
                case "country":
                    $output = @$ipdat->geoplugin_countryName;
                    break;
                case "countrycode":
                    $output = @$ipdat->geoplugin_countryCode;
                    break;
            }
        }
    }
    return $output;
}

حالا باید در قالب به فایلی که باکس دانلود رو در اون قرار دادید برید و کدهای باکس دانلود رو درون این قطعه کد قرار بدید :


<?php
if ( ip_info($_SERVER['REMOTE_ADDR'], 'country') == 'Iran' ) {

         // کدهای باکس دانلود را در اینجا قرار دهید

} else {

?>

<div style='padding: 20px; border: 1px solid lightgray; border-radius: 10px; text-align: center;'>
  برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید
</div>

<?php

}

?>

دقت کنید کد بالا به زبون php هست و باید در هنگام جایگذاری کدهای باکس دانلود دقت کنید که با هم تداخلی از لحاظ سینتکس نداشته باشن.

سلام آقا دستت دردنکنه بابت زحماتت خیلی خیلی ممنونم ولی متاسفانه من متوجه نشدم میشه یه راهنمایی دیگه بکنید؟

ببینید من الان کد باکس دانلودی که نوشتم رو براتون میذارم میشه بگید برای این کدی که من دارم کد شمارو تو چه وضعی باید اول و آخرش بذارم دستت درد نکنه

<div class="tdl">
<?php
if(count($tbox) > 0 ):
?>

	<div class="headtdl">
		<h5 title="دانلود فیلم"> دانلود فیلم</h5>
		
		<div class="downlinktorent">
			
			<?php foreach($tbox as $class => $info) : ?>
			
			<span class="<?php echo $class; ?>"><?php echo $info[0]; ?> : <?php echo $info[1]; ?></span>
			
			<?php endforeach; ?>
			
			</div>
         
            
	</div>
		
		<?php endif; ?>
			</div>

 

لینک به ارسال
در 23 ساعت قبل، 1563 گفته است :

سلام آقا دستت دردنکنه بابت زحماتت خیلی خیلی ممنونم ولی متاسفانه من متوجه نشدم میشه یه راهنمایی دیگه بکنید؟

ببینید من الان کد باکس دانلودی که نوشتم رو براتون میذارم میشه بگید برای این کدی که من دارم کد شمارو تو چه وضعی باید اول و آخرش بذارم دستت درد نکنه


<div class="tdl">
<?php
if(count($tbox) > 0 ):
?>

	<div class="headtdl">
		<h5 title="دانلود فیلم"> دانلود فیلم</h5>
		
		<div class="downlinktorent">
			
			<?php foreach($tbox as $class => $info) : ?>
			
			<span class="<?php echo $class; ?>"><?php echo $info[0]; ?> : <?php echo $info[1]; ?></span>
			
			<?php endforeach; ?>
			
			</div>
         
            
	</div>
		
		<?php endif; ?>
			</div>

 

سلام مجدد

به جای کدی که برای جعبه دانلود تنظیم کردید این کد رو قرار بدید :

<?php

function ip_info($ip = NULL, $purpose = "location", $deep_detect = TRUE) {
   $output = NULL;
   if (filter_var($ip, FILTER_VALIDATE_IP) === FALSE) {
      $ip = $_SERVER["REMOTE_ADDR"];
      if ($deep_detect) {
         if (filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP))
            $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
         if (filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP))
            $ip = $_SERVER['HTTP_CLIENT_IP'];
      }
   }
   $purpose    = str_replace(array("name", "\n", "\t", " ", "-", "_"), NULL, strtolower(trim($purpose)));
   $support    = array("country", "countrycode", "state", "region", "city", "location", "address");
   $continents = array(
      "AF" => "Africa",
      "AN" => "Antarctica",
      "AS" => "Asia",
      "EU" => "Europe",
      "OC" => "Australia (Oceania)",
      "NA" => "North America",
      "SA" => "South America"
   );
   if (filter_var($ip, FILTER_VALIDATE_IP) && in_array($purpose, $support)) {
      $ipdat = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip));
      if (@strlen(trim($ipdat->geoplugin_countryCode)) == 2) {
         switch ($purpose) {
            case "location":
               $output = array(
                  "city"           => @$ipdat->geoplugin_city,
                  "state"          => @$ipdat->geoplugin_regionName,
                  "country"        => @$ipdat->geoplugin_countryName,
                  "country_code"   => @$ipdat->geoplugin_countryCode,
                  "continent"      => @$continents[strtoupper($ipdat->geoplugin_continentCode)],
                  "continent_code" => @$ipdat->geoplugin_continentCode
               );
               break;
            case "address":
               $address = array($ipdat->geoplugin_countryName);
               if (@strlen($ipdat->geoplugin_regionName) >= 1)
                  $address[] = $ipdat->geoplugin_regionName;
               if (@strlen($ipdat->geoplugin_city) >= 1)
                  $address[] = $ipdat->geoplugin_city;
               $output = implode(", ", array_reverse($address));
               break;
            case "city":
               $output = @$ipdat->geoplugin_city;
               break;
            case "state":
               $output = @$ipdat->geoplugin_regionName;
               break;
            case "region":
               $output = @$ipdat->geoplugin_regionName;
               break;
            case "country":
               $output = @$ipdat->geoplugin_countryName;
               break;
            case "countrycode":
               $output = @$ipdat->geoplugin_countryCode;
               break;
         }
      }
   }
   return $output;
}

if ( ip_info($_SERVER['REMOTE_ADDR'], 'country') == 'Iran' ) {

   ?>
   
   <div class="tdl">

      <?php if ( count($tbox) > 0 ) : ?>

         <div class="headtdl">

            <h5 title="دانلود فیلم"> دانلود فیلم</h5>
            
            <div class="downlinktorent">
               
               <?php foreach($tbox as $class => $info) : ?>
               
               <span class="<?php echo $class; ?>"><?php echo $info[0]; ?> : <?php echo $info[1]; ?></span>
               
               <?php endforeach; ?>
               
               </div>
                  
         </div>
         
      <?php endif; ?>

   </div>
   
   <?php

} else {

   ?>

      <div style='padding: 20px; border: 1px solid lightgray; border-radius: 10px; text-align: center; margin-top: 10px; margin-bottom: 10px;'>
      برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید
      </div>

   <?php

}

?>

 

  • پسندیدن 1
  • تشکر 1
  • امتیاز 1
لینک به ارسال
در در ۱۴۰۰/۱۰/۱۶ در 18:57، محسن عواطفی گفته است :

سلام مجدد

به جای کدی که برای جعبه دانلود تنظیم کردید این کد رو قرار بدید :


<?php

function ip_info($ip = NULL, $purpose = "location", $deep_detect = TRUE) {
   $output = NULL;
   if (filter_var($ip, FILTER_VALIDATE_IP) === FALSE) {
      $ip = $_SERVER["REMOTE_ADDR"];
      if ($deep_detect) {
         if (filter_var(@$_SERVER['HTTP_X_FORWARDED_FOR'], FILTER_VALIDATE_IP))
            $ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
         if (filter_var(@$_SERVER['HTTP_CLIENT_IP'], FILTER_VALIDATE_IP))
            $ip = $_SERVER['HTTP_CLIENT_IP'];
      }
   }
   $purpose    = str_replace(array("name", "\n", "\t", " ", "-", "_"), NULL, strtolower(trim($purpose)));
   $support    = array("country", "countrycode", "state", "region", "city", "location", "address");
   $continents = array(
      "AF" => "Africa",
      "AN" => "Antarctica",
      "AS" => "Asia",
      "EU" => "Europe",
      "OC" => "Australia (Oceania)",
      "NA" => "North America",
      "SA" => "South America"
   );
   if (filter_var($ip, FILTER_VALIDATE_IP) && in_array($purpose, $support)) {
      $ipdat = @json_decode(file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip));
      if (@strlen(trim($ipdat->geoplugin_countryCode)) == 2) {
         switch ($purpose) {
            case "location":
               $output = array(
                  "city"           => @$ipdat->geoplugin_city,
                  "state"          => @$ipdat->geoplugin_regionName,
                  "country"        => @$ipdat->geoplugin_countryName,
                  "country_code"   => @$ipdat->geoplugin_countryCode,
                  "continent"      => @$continents[strtoupper($ipdat->geoplugin_continentCode)],
                  "continent_code" => @$ipdat->geoplugin_continentCode
               );
               break;
            case "address":
               $address = array($ipdat->geoplugin_countryName);
               if (@strlen($ipdat->geoplugin_regionName) >= 1)
                  $address[] = $ipdat->geoplugin_regionName;
               if (@strlen($ipdat->geoplugin_city) >= 1)
                  $address[] = $ipdat->geoplugin_city;
               $output = implode(", ", array_reverse($address));
               break;
            case "city":
               $output = @$ipdat->geoplugin_city;
               break;
            case "state":
               $output = @$ipdat->geoplugin_regionName;
               break;
            case "region":
               $output = @$ipdat->geoplugin_regionName;
               break;
            case "country":
               $output = @$ipdat->geoplugin_countryName;
               break;
            case "countrycode":
               $output = @$ipdat->geoplugin_countryCode;
               break;
         }
      }
   }
   return $output;
}

if ( ip_info($_SERVER['REMOTE_ADDR'], 'country') == 'Iran' ) {

   ?>
   
   <div class="tdl">

      <?php if ( count($tbox) > 0 ) : ?>

         <div class="headtdl">

            <h5 title="دانلود فیلم"> دانلود فیلم</h5>
            
            <div class="downlinktorent">
               
               <?php foreach($tbox as $class => $info) : ?>
               
               <span class="<?php echo $class; ?>"><?php echo $info[0]; ?> : <?php echo $info[1]; ?></span>
               
               <?php endforeach; ?>
               
               </div>
                  
         </div>
         
      <?php endif; ?>

   </div>
   
   <?php

} else {

   ?>

      <div style='padding: 20px; border: 1px solid lightgray; border-radius: 10px; text-align: center; margin-top: 10px; margin-bottom: 10px;'>
      برای مشاهده لینک دانلود باید با آی پی ایران وارد سایت شوید
      </div>

   <?php

}

?>

 

سلام آقا محسن واقعا نمیدونم چطور ازتون تشکر کنم خیلی خیلی ممنونم از زحمات و وقتتون که برای من گذاشتید کاری که فرمودین رو انجام دادم ولی مشکل اینجاست که کلا نشون نمیده حتی برای خودم که با آیپی ایرانم در هر صورت چه با فیلتر شکن هم رفتم چه بدون فیلتر شکن کلا اون قسمت else رو اجرا میکنه...

لینک به ارسال
در 16 ساعت قبل، 1563 گفته است :

سلام آقا محسن واقعا نمیدونم چطور ازتون تشکر کنم خیلی خیلی ممنونم از زحمات و وقتتون که برای من گذاشتید کاری که فرمودین رو انجام دادم ولی مشکل اینجاست که کلا نشون نمیده حتی برای خودم که با آیپی ایرانم در هر صورت چه با فیلتر شکن هم رفتم چه بدون فیلتر شکن کلا اون قسمت else رو اجرا میکنه...

سلام، وقت بخیر

خواهش میکنم، لطف دارید شما

کد که مشکلی نداره و (حداقل برای خودم) به درستی عمل میکنه، لطفا آدرس سایت رو بفرستید. شاید مشکل از ip شما باشه.

  • تشکر 1
لینک به ارسال
در 1 ساعت قبل، محسن عواطفی گفته است :

سلام، وقت بخیر

خواهش میکنم، لطف دارید شما

کد که مشکلی نداره و (حداقل برای خودم) به درستی عمل میکنه، لطفا آدرس سایت رو بفرستید. شاید مشکل از ip شما باشه.

آقا محسن خدا خیرت بده انشالله هر مشکلی داشتی تو زندگیت خدا برات حل کنه، داداش درست شد واقعا دستت درد نکنه خیلی خیلی خیلی ممنونم :wub:

لینک به ارسال
در هم اکنون، 1563 گفته است :

آقا محسن خدا خیرت بده انشالله هر مشکلی داشتی تو زندگیت خدا برات حل کنه، داداش درست شد واقعا دستت درد نکنه خیلی خیلی خیلی ممنونم :wub:

خواهش میکنم، خوشحالم که حل شد مشکلتون. موفق باشید

  • پسندیدن 1
  • تشکر 1
لینک به ارسال

لطفا برای ارسال دیدگاه وارد شوید

شما بعد از اینکه وارد حساب کاربری خود شدید می توانید دیدگاهی ارسال کنید



ورود به حساب کاربری
×
×
  • اضافه کردن...