Помощь Аватар пользователя в полной версии новости

Тема в разделе "DLE", создана пользователем Хортица, 25 мар 2009.

Информация :
Актуальная версия DataLife Engine 11.3
( Final Release v.11.3 | Скачать DataLife Engine | Скачать 11.3 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.2 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. Хортица

    Хортица Прохожие

    1) ДЛЕ 7.5
    2) Лицензия

    Как сделать, чтобы в fullstory выводился аватар пользователя ?
    Первое что пришло мне в голову, отредактировать /engine/modules/show.full.php
    после:
    Код:
    if( $row['is_register'] and $row['reg_date'] ) $tpl->set( '{registration}', langdate( "j.m.Y", $row['reg_date'] ) );
    			else $tpl->set( '{registration}', '--' );
    добавил:
    Код:
    			if( $row['foto'] and (file_exists( ROOT_DIR . "/uploads/fotos/" . $row['foto'] )) ) $tpl->set( '{foto}', $config['http_home_url'] . "uploads/fotos/" . $row['foto'] );
          else $tpl->set( '{foto}', "{THEME}/images/noavatar.png" );
    Но в fullstory все равно выводится {foto}
    Одним местом чувствую что не происходит выборка из базы, но где поправить ума не приложу :(
     
  2. Shotlandec

    Shotlandec

    Регистр.:
    17 сен 2007
    Сообщения:
    728
    Симпатии:
    162
    вызывай вот так:

    Код:
    <img src="{foto}" border=0 style="border:1px solid #e4e4e4;">
    правда твоим кодом вызвать не получилось. Заработало вот так:

    Код:
    if ($row['foto']) 
    $tpl->set('{foto}', $config['http_home_url']."uploads/fotos/".$row['foto']);
    else
    $tpl->set('{foto}', "{THEME}/images/noavatar.png");
    но почему-то только дефолтный аватар показывается.... сильно не пинай, не силен в php :D
     
  3. Хортица

    Хортица Прохожие

    Нет, не получилось :(
     
  4. Bobrov

    Bobrov Постоялец

    Регистр.:
    7 авг 2008
    Сообщения:
    145
    Симпатии:
    13
    Сделай дополнительный запрос к базе

    Код:
    $db->query("SELECT * FROM " . USERPREFIX . "_users where name = '$user' AND password='$pass'");
    Тока тебе возможно условия нужны другие, по какому принципу фото вставляться должно? Фото того кто добавил новость?
     
  5. MSW

    MSW

    Регистр.:
    27 авг 2007
    Сообщения:
    491
    Симпатии:
    408
    немного не понял смысла вопроса... можно ли уточнить подробнее?
    именно в самой новости от пользователя чтоб выводился его аватар?

    так как в комментах он уже по дефолту выводится
    и в show.full.php - уже идёт выборка с БД значения foto

    сама выборка идёт тут:
    PREFIX . "_comments.email as gast_email, text, ip, is_register, name, " . USERPREFIX . "_users.email, news_num, comm_num, user_group, reg_date, signature, foto, fullname........

    для вывода тут:
    PHP:
                if( $row['foto'] ) $tpl->set'{foto}'$config['http_home_url'] . "uploads/fotos/" $row['foto'] );
                else 
    $tpl->set'{foto}'"{THEME}/images/noavatar.png" );
     
  6. Хортица

    Хортица Прохожие

    Имеем в полной новости:
    Опубликовал Автор 25.03.2009
    А хочется чтобы было примерно так:
    Аватар опубликовал Автор 25.03.2009
     
  7. Shotlandec

    Shotlandec

    Регистр.:
    17 сен 2007
    Сообщения:
    728
    Симпатии:
    162
    лови:

    Код:
    $sql_result1 = $db->query("SELECT name,foto FROM " . PREFIX . "_users where name='".$row['autor']."'");
    $row1 = $db->get_row($sql_result1);
    if ($row1['foto'])
    $tpl->set('{foto}', $config['http_home_url']."uploads/fotos/".$row1['foto']);
    else
    $tpl->set('{foto}', "{THEME}/images/noavatar.png");
    ставь после:

    Код:
    while($row = $db->get_row($sql_result)){
    ну а вывод делай как я тебе сказал:

    Код:
    <img src="{foto}" border=0>
     
    diabl и adregor нравится это.
Статус темы:
Закрыта.