Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Фиксировать рефереры только с других сайтов (исключить внутренние переходы)
 
 автор: Panker   (03.10.2006 в 14:43)   письмо автору
 
 

Добрался до минимальной статистики, и сразу же вопрос!
пишу рефералов!
Пишутся так http://wwww/page_zakaz.html ну типа и с моих страниц и с других страниц и с сайтов других пишутся!

Помогите сообразить, как мне записывать только с других хосттов?
То есть если реферал с моего же сайта с другой страницы, то его не писать, а если с другого сайта то писать?
как мне определить мой сайт или не мой сайт? :)

Зарание пасибо

   
 
 автор: valenok   (03.10.2006 в 14:51)   письмо автору
 
   для: Panker   (03.10.2006 в 14:43)
 


<?php 
if(substr($_SERVER['HTTP_REFERER'],0,13)=="http://wwww/")

   
 
 автор: Panker   (03.10.2006 в 15:06)   письмо автору
 
   для: valenok   (03.10.2006 в 14:51)
 

а это только первые символы сверяет или это расчитанно на проверку одного сайта?
и что значит ,0,13 если не трудно поясни, у меян все реферы не с моего сайта будут записыватся или только опеределённый который я укажу?

   
 
 автор: Panker   (03.10.2006 в 15:15)   письмо автору
 
   для: Panker   (03.10.2006 в 15:06)
 

Поставил ссылку на сайт http://www.cms-ka.ru/ захожу к себе на сайт!
И не пишут ываше, если черехз оперу захожу ваше нечего нет, так как страница кешируется :(
Если с IE то пишет что реферала нет, код сделал такой

<?php
$ip
=$_SERVER['SERVER_ADDR'];
$refer=$_SERVER['HTTP_REFERER'];
$date date("d.m.Y");


if(
substr($_SERVER['HTTP_REFERER'],0,13)=="http://wwww/")
{
$ath mysql_query("INSERT INTO stat VALUES ('', '$ip', '$refer', '$date');");
$sql_res=mysql_query($ath,$dbcnx);
}
else
{
$ath mysql_query("INSERT INTO stat VALUES ('', '$ip', 'Нету', '$date');");
$sql_res=mysql_query($ath,$dbcnx);
}
?>


почему ошибка не знаете?

   
 
 автор: Саня   (03.10.2006 в 16:00)   письмо автору
 
   для: Panker   (03.10.2006 в 15:15)
 

Может фаервол виноват? Отключать не пробовал?

   
 
 автор: cheops   (03.10.2006 в 16:38)   письмо автору
 
   для: Panker   (03.10.2006 в 14:43)
 

Можно поcтупить следующим образом
<?php
      
if(substr($_SERVER["SERVER_NAME"],0,4) == "www."$server_name substr($_SERVER["SERVER_NAME"],4);
      if(
strpos($_SERVER['HTTP_REFERER'],$server_name))
      {
         
// Это внутренний переход с одной страницы сайта на другую
         
$_SERVER['HTTP_REFERER'] = "";
      }
?>

   
 
 автор: Panker   (03.10.2006 в 16:54)   письмо автору
 
   для: cheops   (03.10.2006 в 16:38)
 

фаервола ваще нет :)

а вот на счёт

>Можно поcтупить следующим образом
>
<?php
>      if(substr($_SERVER["SERVER_NAME"],0,4) == "www."$server_name substr($_SERVER["SERVER_NAME"],4);
>      if(
strpos($_SERVER['HTTP_REFERER'],$server_name))
>      {
>         
// Это внутренний переход с одной страницы сайта на другую
>         $_SERVER['HTTP_REFERER'] = "";
>      }
>
?>


то есть мне надо так сделать




<?php 
      
if(substr($_SERVER["SERVER_NAME"],0,4) == "www."$server_name substr($_SERVER["SERVER_NAME"],4); 
      if(
strpos($_SERVER['HTTP_REFERER'],$server_name)) 
      { 
         
тут мы в базу пишем что реферала нет
         $_SERVER
['HTTP_REFERER'] = ""
      } 
else 
{
тут нормальный реферал дапишем его в базу да?
}
?>


я правельно понел?

   
 
 автор: valenok   (03.10.2006 в 19:41)   письмо автору
 
   для: Panker   (03.10.2006 в 16:54)
 


<?php 
$ip
=$_SERVER['SERVER_ADDR']; 
$refer=$_SERVER['HTTP_REFERER']; 
$date date("d.m.Y"); 


if(
strstr($refer,"mysite.ru")) 

// Это с моего сайта

else 

// С другого

?>

   
 
 автор: Panker   (03.10.2006 в 20:42)   письмо автору
 
   для: valenok   (03.10.2006 в 19:41)
 

ещё вопрос,опера кеширует хтмл страницу, поэтмоу когда человек с реферала переходит на страницу она их кеша достаётся,и реферал не пишится!
как мона отменить кеширование?

   
 
 автор: cheops   (04.10.2006 в 14:55)   письмо автору
 
   для: Panker   (03.10.2006 в 20:42)
 

Можно подавить кэширование так, как это описывается в темах по ссылкам
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=260
http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=5460
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1830
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=4960
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=1830
http://www.softtime.ru/forum/read.php?id_forum=1&id_theme=9938

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования