Вставляем фрейм куда хотим
Автор dark_gluk || crazy_gluk
(вынес в отдельную статью обсуждение в теме Умный фрейм + кое-что добавил)
В этой статье я хочу рассказать о том как можно вставить фрейм куда угодно,хоть...
Для примера я возьму два типа файлов:рисунок(jpg) и архив(rar).
Чтобы все это дело заработало потребуется хостинг с поддержкой php.
1. Мучаем картинку
Итак,начнем с картинки.В каталоге,где будет лежать картинка создаем
файлик .htaccess(если он конечно до сих пор не создан) и вписываем туда
следующую строку:
Код:
AddType application/x-httpd-php .jpg
Теперь в этой дире файлы .jpg интерпретируются php.
Создадим файл image.jpg в тойже дире и впишем в него следующий код:
Код:
<?php
if ($_GET['f']==1)
{
$img = base64_encode(file_get_contents('image1.jpg'));
header("Content-Type: image/jpeg");
echo base64_decode($img);
exit;
}
echo 'Здесь фрейм';
echo '
';
?>
Вторая часть кода выводит фрейм и
посылает запрос на генерацию картинки,первая часть кода генерирует
картинку,которая берется из image1.jpg.Естественно в диру нужно сунуть
файл с картинкой и обозвать его image1.jpg.
Теперь когда мы заходим по ссылке,у нас срабатывает фрейм и отображается картинка
2. Подлый архив
Перейдем к самому интересному,к архивам.Опять же в выбранной нами дире создаем файл .htaccess и вписываем строку:
Код:
AddType application/x-httpd-php .rar
Далее создаем файл archive.rar в дире и пишем туда следующее:
Код:
<?php
if ($_GET['f']==1) {
$file=@fopen("archive1.rar","r");
$mime_type='';
header("Content-type: ".$mime_type);
header("Content-disposition: attachment; filename=\"archive1.rar\";");
echo @fread($file,@filesize("archive1.rar"));
}
echo "Здесь фрейм
window.location.href='archive.rar?f=1';";
?>
Этот код делает практически тоже самое что и предыдущий.
Вот таким вот образом можно засунуть фрейм практически куда угодно,а
потом впаривать линки на красивые картинки и содержательные архивчики
P.S. Спасибо p-range'у за отличную идею и помощь в ее реализации