Есть как минимум 2 варианта.
1. Серверный:
<? echo file_get_contents('http://donor.com');?>
2. Клиентский:
<iframe src="http://donor.com" frameborder="0" scrolling="no">
в таком варианте полос прокрутки не будет
Извините, но я частными консультациями не занимаюсь. Ни просто так ни за деньги. Просто нет времени.
Можно. Замените
<?$keys = array_slice($keys,1); // Удаляем из базы ключей верхний ключ?>
на
<? $old_key = array_shift($keys); array_push($keys,$oldkey); ?>
Там вы смешиваете счётчик и файл данных. Это лишает программу гибкости.
1. Покажите пример, плиз.
2. Вопрос пополнения базы ключей оставлен за скобками, так как ТС сказал что ключ берутся откуда-то со стороннего ресурса.
И это даже не говоря про посещаемость в 80к хостов..
Предлагаю вам дочитать моё сообщение до конца.
На файлах алгоритм решения вашей задачи выглядит так:
<? $count = (int)file_get_contents('counter.txt'); // Читаем текущее значение счётчика $keys = file('keys_db.txt'); // Читаем базу ключей if($count < 1000){ $count++; // Если счётчик меньше тысячи, то просто увеличваем его }else{ $count = 0; // Если достигли 1000 посещений, то обнуляем счётчик $keys = array_slice($keys,1); // Удаляем из базы ключей верхний ключ $h = fopen('keys_db.txt','w+'); // Сохраняем обновлённую базу ключей fwrite($h,implode('',$keys)); fclose($h); } $h = fopen('counter.txt','w+'); // Обновляем счётчик fwrite($h,$count + 1); fclose($h); $Key = trim(array_shift($keys)); // Получаем текущий ключ ?>
Но если предполагается большая посещаемость, то файлам доверять нельзя из-за низкой скорости работы с диском и, как уже отмечали выше, проблем с блокировками (два процесса могут одновременно ломиться в один файл для обновления счётчика и/или чтения базы ключей, что рано или поздно приведёт к коллизиям).
Здесь нужно счётчик и базу выносить либо в реляционную (mysql), либо (что логичнее) в key-value БД (типа redis, memcache и т.д.). Тогда всех вышеперечисленных проблем можно збежать.
hMartin, никто не мешает кешировать ответы детектора во избежании лишней нагрузки.
Преимущества сервиса от яндекса в том, что там всегда свежая база юзерагентов. И если через месяц выйдет новое устройство с новым агентом, то не придётся опять искать где валяется актуальный htaccess.
Начать нужно с проверки есть ли в коде страницы в залогиненом состоянии js файл библиотеки fancybox.
Функцию resize надо ж определить.
Например так:
function resize($source,$dest,$width,$height){ $image = new Imagick(); $image->readImage($source); $image->cropThumbnailImage($width,$height); $image->writeImage($dest); $image->destroy(); }
Только предварительно убедитесь в phpinfo что у вас на хостнге включен модуль imagick
PS Оптимизация данного кода под цикл - ваше домашнее задание.
Добавьте в ваш htaccess файл:
Можно использовать API Яндекс детектора: http://api.yandex.ru/detector/