А я подскажу фишечку, не очень хорошо известную. Для
code9, напишу подробно.
В том месте где ты будешь выводить аву ты точно знаешь id юзера. Иначе откуда тебе знать чья ава здесь должна быть? ))) каламбур
Значит в базе никакой инфы про аватару хранить не придется! Самый простой способ сохранять сами аватары как "
id.jpg" - здесь вместо
id реальный id юзера .
Даже если аватара не в формате jpeg, а gif или png, то есть расширение файла не соответствует реальному типу, браузер сумеет её правильно отрисовать! Проверено. Значит не паримся и всегда сохраняем с расширением ".jpg"
Зачем это нужно? Да просто чтобы не проверять есть ли у нас файл каждого расширения!
Остается один раз проверить наличие авы. Предположим в массиве $user у тебя хранятся данные о юзере, а в $user['id'] - его id.
Пусть также у тебя определены две константы: SITE_ROOT - корневая папка твоего сайта, BASE_URL - как выглядит этот корень в адресной строке браузера.
Например где-то в файле конфигурации написано
define('SITE_ROOT', './');
define('BASE_URL', 'http://vasiapupkin.ru');
Код вывода аватары
if (file_exists(SITE_ROOT.'img/avatars/'.$user['id'].'.jpg'))
echo '<img src="'.BASE_URL.'/img/avatars/'.$user['id'].'.jpg">';
else
echo '<img src="'.BASE_URL.'/img/avatars/no_avatar.jpg">';
Если аватары у юзера нет — выводим аватару по-умолчанию
ιιlllιlllι унц-унц