11:48
Отображение контента по критериям [PHP]


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

В шаблоне страницы:

Code
<div align="center">  
  

  
  <b>Данный пример демонстрирует использование скрипта для ограничения просмотра контента в зависимости от возраста</b>  
  </p>  
</div>  
<hr>  

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('')";  
  }  
  return;  
}  
?>  

<div id='error'><b>Фото: мокрая киска</b>

*внимание, просмотреть фото вы можете только, если вам испольнилось 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">  


<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");  
?>
Управление регистром строк в php
Категория: PHP скрипты для uCoz | Просмотров: 1119 | Добавил: Njakke | Рейтинг: 5.0/1
Всего комментариев: 1
avatar
1 sunker • 19:28, 01.10.2011
где ссылка на скачивание:
Рекомендуем также:
avatar
Статистика


Онлайн всего: 3
Гостей: 3
Пользователей: 0




Сегодня были:

mobiua