Динамическая замена страницы

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 06.10.08
Сообщения: 239
Рейтинг: 40

Ссылка на сообщениеДобавлено: 09/12/16 в 04:19       Ответить с цитатойцитата 

Нужно сделать следующее:

При заходе на ввв.сайт\папка1\index.php должно проверяться, если заход по реф1 - то показываем один html код, если по реф2 - то другой, при этом урл должен оставаться тот же, просто отображаться нужный хтмл код, чтобы конечному пользователю это было не видно.

Кто нибудь поможет или подскажет как такое реализовать, вроде бы несложно, но я тут совсем не в теме.

0
 



С нами с 25.12.14
Сообщения: 602
Рейтинг: 441


Передовик Master-X (16.04.2017) Передовик Master-X (01.05.2017) Передовик Master-X (16.05.2017) Передовик Master-X (01.06.2017)
Ссылка на сообщениеДобавлено: 09/12/16 в 04:42       Ответить с цитатойцитата 

смотря что понимается под реф1, реф2. если http_referer , тода что-то типа

Код:

<?php
if($_SERVER['HTTP_REFERER'] == 'referer1.com')
   echo "<div>html codefor refere1.com</div>";

if($_SERVER['HTTP_REFERER'] == 'referer2.com')
   echo "<div>html codefor refere2.com</div>";
?>

Экскурсии в Праге 2018

0
 



С нами с 27.12.16
Сообщения: 6
Рейтинг: -1

Ссылка на сообщениеДобавлено: 30/12/16 в 10:19       Ответить с цитатойцитата 

dizziness писал:
смотря что понимается под реф1, реф2. если http_referer , тода что-то типа

Код:

<?php
if($_SERVER['HTTP_REFERER'] == 'referer1.com')
   echo "<div>html codefor refere1.com</div>";

if($_SERVER['HTTP_REFERER'] == 'referer2.com')
   echo "<div>html codefor refere2.com</div>";
?>



а если реферов куча, и лежат в текст файле, if не годен, лучше через цикл for

-1
 



С нами с 12.06.04
Сообщения: 121
Рейтинг: -3

Ссылка на сообщениеДобавлено: 12/01/17 в 14:53       Ответить с цитатойцитата 

dizziness писал:
смотря что понимается под реф1, реф2. если http_referer , тода что-то типа

Код:

<?php
if($_SERVER['HTTP_REFERER'] == 'referer1.com')
   echo "<div>html codefor refere1.com</div>";

if($_SERVER['HTTP_REFERER'] == 'referer2.com')
   echo "<div>html codefor refere2.com</div>";
?>


а как реализовать не просто отображение заданной строки, а вывод html страницы? т.е. если реф1, то показываем содержимое страницы 1.html, если реф2, то показываем 2.html

-1
 



С нами с 17.12.00
Сообщения: 1468
Рейтинг: 1005

Ссылка на сообщениеДобавлено: 02/02/17 в 06:10       Ответить с цитатойцитата 

Код:

<?php
if($_SERVER['HTTP_REFERER'] == 'referer1.com') readfile("1.html");
elseif($_SERVER['HTTP_REFERER'] == 'referer2.com') readfile("2.html");
elseif($_SERVER['HTTP_REFERER'] == 'referer3.com') readfile("3.html");
?>


Если реферов куча.
В текстовом файле, одна строчка = один реф
Также нужно определить для каждого свою страницу. Пусть будет referer1.com.html для простоты кода. т.е. для referer1.com будет отображен referer1.com.html если он есть.
Код:

<?php
//загружаем файл
$refs = file("refs.txt", FILE_IGNORE_NEW_LINES, FILE_SKIP_EMPTY_LINES);
//циклом перебираем строчки пока найдем совпадение
foreach ($refs as $referer)
if($_SERVER['HTTP_REFERER'] == $referer) {
   $page = file_get_contents($referer . ".html");
   break;
  }
//проверяем есть ли что в $page чтобы не отдать пустую страницу
if (!$page) $page = file_get_contents("default.html");
echo $page;
?>



В домене рефера находим ключевое слово, нишу, и грузим соответствующую страницу.
teen.html, mature.html
Код:

$keys = array("teen","mature","tits");
foreach ($keys as $key)
if (strstr($_SERVER['HTTP_REFERER'], $key)) {
   $page = file_get_contents($key . ".html");
   break;
  }
if (!$page) $page = file_get_contents("default.html");
echo $page;

SmartCJ, TCMS | StreamRotator
Натяжка, установка, фитьки, htaccess и заколдовка.

2
 



С нами с 06.10.08
Сообщения: 239
Рейтинг: 40

Ссылка на сообщениеДобавлено: 12/03/17 в 16:10       Ответить с цитатойцитата 

Nikso писал:
Код:

<?php
if($_SERVER['HTTP_REFERER'] == 'referer1.com') readfile("1.html");
elseif($_SERVER['HTTP_REFERER'] == 'referer2.com') readfile("2.html");
elseif($_SERVER['HTTP_REFERER'] == 'referer3.com') readfile("3.html");
?>


Если реферов куча.
В текстовом файле, одна строчка = один реф
Также нужно определить для каждого свою страницу. Пусть будет referer1.com.html для простоты кода. т.е. для referer1.com будет отображен referer1.com.html если он есть.
Код:

<?php
//загружаем файл
$refs = file("refs.txt", FILE_IGNORE_NEW_LINES, FILE_SKIP_EMPTY_LINES);
//циклом перебираем строчки пока найдем совпадение
foreach ($refs as $referer)
if($_SERVER['HTTP_REFERER'] == $referer) {
   $page = file_get_contents($referer . ".html");
   break;
  }
//проверяем есть ли что в $page чтобы не отдать пустую страницу
if (!$page) $page = file_get_contents("default.html");
echo $page;
?>



В домене рефера находим ключевое слово, нишу, и грузим соответствующую страницу.
teen.html, mature.html
Код:

$keys = array("teen","mature","tits");
foreach ($keys as $key)
if (strstr($_SERVER['HTTP_REFERER'], $key)) {
   $page = file_get_contents($key . ".html");
   break;
  }
if (!$page) $page = file_get_contents("default.html");
echo $page;


я правильно понимаю, что при переходе со страницы teen.html все равно будет виден рефер самого скрипта index.php, а не этой страницы, которую он выдает?

0
 
+ +


С нами с 16.06.12
Сообщения: 5068
Рейтинг: 293

Ссылка на сообщениеДобавлено: 12/03/17 в 17:21       Ответить с цитатойцитата 

на вскидку не проверял )
Код:
<?php
$ref = $_SERVER ['HTTP_REFERER']; //получаем реферер
$refs_and_pages_array = file ('refs_pages.txt'); //берем из txt базы формат refererN;pageN.html и помещаем в массив
foreach ($refs_and_pages_array as $temp_data) //цикл для проверки рефереров посточно
{
$ref_pages = explode (';', $temp_data ); //получаем реф из базы для итерации цикла
if ($ref == $ref_pages [0]) //если реферер равер рефу из базы
   {
$page_content = file_get_contents (trim($ref_pages[1])); // то читаем код страницы для подмены для реального реферера
echo $page_content; //выводим страницу html
exit; //завершаем цикл и скрипт
   }

}
echo file_get_contents ('no_ref_page.html'); //в случае если не был задействован не один реф загружается no_ref страница

?>


формат refs_pages.txt
ref;page_html_for_load
http://google.com;page1.html
http://msn.com;page2.html
http://yahoo.com;page3.html

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Опросы

За кого будете голосовать на выборах Президента РФ?

  • Бабурин Сергей Николаевич
  • Грудинин Павел Николаевич
  • Жириновский Владимир Вольфович
  • Путин Владимир Владимирович
  • Собчак Ксения Анатольевна
  • Сурайкин Максим Александрович
  • Титов Борис Юрьевич
  • Явлинский Григорий Алексеевич
  • Я против всех
  • Я не имею права голоса



Обсудите на форуме обсудить (235)
все опросы »