Скрипт "Отображение контента по критерию"


Скрипт "Отображение контента по критерию"

1409
7.4 из 10
Проголосовало: 6




Описание данного скрипта:
В этом примере демонстрируется, как с помощью php-скрипта ограничить показ картинки в зависимости от возраста пользователя на вашем сайте, который пытается ее просмотреть. Для этого скрипт использует API системы uCoz. При нажатии на кнопку "Просмотреть фото" скрипт выполняет запрос о данных пользователя посредством API, сравнивает полученный возраст пользователя с критерием (должен быть не меньше 18 лет) и, в случае соответствия ему, отображает картинку. Интересный и довольно полезный скрипт.

Установка скрипта:
В шаблоне страницы:

Code
<div align="center">  
  <p>  
  <b>Данный пример демонстрирует использование скрипта для ограничения просмотра контента в зависимости от возраста</b>  
  </p>  
  </div>  
  <hr>  
  <?$PHPCODE$("http://phpexample.ucoz.net/php/example006/example006.php")?>

PHP скрипт example006.php:

Code
<?  
  if (count($_POST)>0)  
  {  
  $___notjson=1;  
  if (!$_uid=ucoz_getinfo("SITEUSERID"))  
  {  
  echo "$('#error').html('Невозможно идентифицировать пользователя')";  
  return;  
  }  
  $context = stream_context_create(array('http' => array('method' => "GET", 'header' => "Content-Type: text/xml",'timeout' => 8)));  
  $file = file_get_contents("http://phpexample.ucoz.net/api/index/8-$_uid", false, $context);  
  if (strpos('200', $http_response_header[0]) || !$file)  
  {  
  echo "$('#error').html('Не могу получить данные, попробуйте позже')";  
  return;  
  }  
  $response = xmlrpc_decode($file,"utf8");  
  if ($response && xmlrpc_is_fault($response))  
  {  
  echo "$('#error').html('Не могу получить данные, попробуйте позже')";  
  return;  
  }  
  if ((int)$response['USER_AGE']<18) echo "$('#error').html('Вы не можете просмативать данный материал, т.к. вам не исполнилось 18 лет')";  
  else  
  {  
  file_put_contents('allowedusers', "$_uid\n", FILE_APPEND);  
  echo "$('#error').html('<img height=\"480\" width=\"640\" src=\"/php/example006/getimg.php\">')";  
  }  
  return;  
  }  
  ?>  

  <div id='error'><b>Фото: мокрая киска</b><p>*внимание, просмотреть фото вы можете только, если вам испольнилось 18 лет</p></div>  
  <form action="/php/example006/example006.php" method="post" onsubmit="_uPostForm(this,{dataType:'script'});return false;" onerror="alert('Error');">  
  <input type="hidden" name="none" value="1">  
  <p><input type="submit" value="Просмотреть фото"></p>  
  </form>

PHP скрипт getimg.php:

Code
<?  
  if (!$_uid=ucoz_getinfo("SITEUSERID")) return;  
  $lines=file('allowedusers');  
  $allow=0;  
  foreach ($lines as $line_num => $line)  
  {  
  trim($line);  
  if ($line==$_uid)  
  {  
  $allow=1;  
  unset($lines[$line_num]);  
  }  
  }  
  file_put_contents('allowedusers',$lines);  
  if (!$allow) return;  
  header('Content-Type: image/jpeg');  
  readfile("./example006.jpg");  
  ?>

Всё, теперь скрипт готов к использованию.
Автор публикации: Загрузка
Загрузка
Disturbed, это его n материал
Источник: http://PhP-uCoz.Ru/
  • Всего комментариев: 1

Xgibit
0
Xgibit написал: Написано 27 Декабря 2012 в 00:47
Комментарий №1
хорошо что качать не каких файлов не надо =)

  • Оставить комментарий:
Добавлять комментарии могут только зарегистрированные пользователи.
Регистрация | Вход
Меню сайта
Категории
Для помощи создания сайта uCoz 24
Скрипты и модификации для Ucoz 2101
Шаблоны форумов Ucoz 28
Шаблоны сайтов Ucoz 429
Авторство Webo4ki 309
php скрипты для ucoz 57
Графика для uCoz 40
Мини-чат
Последние комментарии
как поставить свою ссылку и логотип
  • Сатурн-1 написал:
  • Похвально.
  • Winston888 написал:
  • Я не говорил что делаю только скрипты. Я делаю шаблоны, скрипты, адаптации с разных движков под ucoz и на оборот + я ещё и сам рисую. В данный момент занимаюсь дизайном для webo4ka сам рисую сам верстаю.
  • Сатурн-1 написал:
  • Заметь, мы делаем почти одну и ту же работу.
    Ты - скрипты, я -шаблон. И каждый делает это бесплатно, НО
    ты делаешь скрипты без шаблона, я делаю шаблон без скриптов (не считая основных).
    Я тоже могу сказать что твои скрипты не идеальны, но не буду т.к. даже не знаю какие из всех существующих твои.
    Поэтому ты не сравнивай скрипты и шаблоны да еще и на Ucoz'e, мы же не на хакатоне каком нибудь.
  • Winston888 написал:
  • Если бы я не добавлял бесплатные адаптации или скрипты бесплатно я бы наверное не стал бы комментировать ваш материал.
    Последние темы
    Опрос
    403
    А
    Р
    Оцените новый дизай:)
    Статистика
    Анализ интернет сайта
    0
    онлайн
    0
    наших
    0
    чужих
    Онлайн всего: 2
    Гостей: 2
    Пользователей: 0
    0
    Сегодня были
    Топ пользователей: