За последние 24 часа нас посетили 57948 программистов и 1695 роботов. Сейчас ищут 892 программиста ...

Вывод аватары

Тема в разделе "PHP для новичков", создана пользователем zevilz, 16 апр 2012.

  1. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    Нужно вывести аватару пользователя. Аватары хранятся в папке /img/avatars/ и имеют то же название, что и id пользователя в базе, и расширение изображения может быть .jpg .gif и .png. Допустим, нужно вывести аватару с id=7:
    Код (Text):
    1. $avatar = 7
    2. echo "<img src='img/avatars/" . $avatar . "'>";
    Как дать понять, что мне безразлично, какого формата изображение?
     
  2. Your

    Your Старожил

    С нами с:
    2 июл 2011
    Сообщения:
    4.074
    Симпатии:
    7
    Я уже писал по этому поводу проверку, ищите.
     
  3. YSandro

    YSandro Старожил

    С нами с:
    7 апр 2011
    Сообщения:
    2.523
    Симпатии:
    2
    Можно вообще не писать, и у всех файлов картинок убрать расширение. Браузер всё равно смотрит не на расширение, а на заголовок внутри файла.
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    отдавай скриптом
     
  5. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    А можно как нибудь вот так?
    $ava = $avatar . ".*";
    echo "<img src='img/avatars/" . $ava"'>";
     
  6. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Раз уж у пользователя есть возможность загружать аватары, то может сразу заносить название полное картинки в базу?
     
  7. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    Система регистрации работает через движок punBB. Ковырятся в нем не хочется
     
  8. jenya777777

    jenya777777 Активный пользователь

    С нами с:
    16 мар 2010
    Сообщения:
    562
    Симпатии:
    0
    Может тогда тебе у них на сайте спросить http://punbb.ru/, все таки там больше в ней разбираются.
     
  9. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    надо заюзать апи пунбб
     
  10. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    Самое простое - найти место где загружается ава и принудительно давать одно расширение, скажем .jpg. Браузер справляется с неправильным расширением картинки )))
     
  11. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    на punbb.ru я спрашивал, никто не хочет мне отвечать. Пробовал использовать вывод аватары через функцию форума - выводится пустой тег <img>. Даже на главной форума не работает. Вроде все правильно делаю. Решил вот сам разобраться и написать.
     
  12. artoodetoo

    artoodetoo Суперстар
    Команда форума Модератор

    С нами с:
    11 июн 2010
    Сообщения:
    11.128
    Симпатии:
    1.248
    Адрес:
    там-сям
    вот это центровая фраза. надо убрать "вроде" и тогда всё получится..
     
  13. zevilz

    zevilz Активный пользователь

    С нами с:
    14 июн 2010
    Сообщения:
    182
    Симпатии:
    0
    Сделал вот так:
    Код (Text):
    1.    switch ($forum_user['avatar'])
    2.     {
    3.         case FORUM_AVATAR_GIF:
    4.             $avatar_filename = $forum_user['id'].'.gif';
    5.             break;
    6.         case FORUM_AVATAR_JPG:
    7.             $avatar_filename = $forum_user['id'].'.jpg';
    8.             break;
    9.         case FORUM_AVATAR_PNG:
    10.             $avatar_filename = $forum_user['id'].'.png';
    11.             break;
    12.         case FORUM_AVATAR_NONE:
    13.             $noavatar = TRUE;
    14.             break;
    15.         default:
    16.             $noavatar = TRUE;
    17.             break;
    18.     }
    Сейчас все работает)) Всем спасибо
     
  14. html-программист

    html-программист Активный пользователь

    С нами с:
    10 фев 2012
    Сообщения:
    831
    Симпатии:
    4
    Адрес:
    Kiev
    Код (PHP):
    1. $avatar = 7
    2. $extensions=array(".gif",".png",".jpg",".jpeg",".bmp",".mp3");
    3. for($i=0;$i<5;$i++){
    4.     $filepath="/img/avatars/".$avatar.$extensions[$i];
    5.     if (file_exists($filepath)) 
    6.         echo "<img src='img/avatars/".$avatar.$extensions[$i]."'>";
    7. }
    8.  
    чё