Перейти к публикации

Рекомендованные сообщения

Подскажите пожалуйста, как вывести icq (или какуюто другую информацию о авторе) автора в таблице БД posts нет данного поля (его, собственно, и не должно быть :) ) отсюда вытекает несколько вопросов:

1. Как должен выглядеть запрос в бд ?

2. Где этот запрос вставлять ? в engine.php или в show.short.php

Зы: желательный результат - тэг {icq} в шаблоне короткой и полной новости.

Зыы: и ещё один небольшой вопрос не касающийся сабжа, существует оффлайн версия документации по движку ? т.к. в связи с переходом на DLE, хочется чтобы под рукой всегда была документация.

Ссылка на сообщение
Поделиться на других сайтах

Зыы: и ещё один небольшой вопрос не касающийся сабжа, существует оффлайн версия документации по движку ?

документация идет вместе с движком в комплекте

Ссылка на сообщение
Поделиться на других сайтах

+1!!! Тоже интересует именно этот вопрос. Как вывести в короткую новость то что я хочу, ту же аську.. Спасибо заранее за ответы!

Ссылка на сообщение
Поделиться на других сайтах

Строчка №255 в файле engine/engine.php чистого дистрибутива версии 6.3

$sql_select = "SELECT id, autor, date, short_story, full_story, xfields, title, category, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read FROM " . PREFIX . "_post WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
Для того, чтоб подцепить ICQ автора новости попробуй так:
$sql_select = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." AND u.name = p.autor ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
соответственно в файле engine/modules/show.short.php перед строчкой:
$tpl->set('{title}', stripslashes($row['title']));
пишем
$tpl->set('{icq}', stripslashes($row['icq']));

Ну и в шаблон краткой новости в любое место добавляй {icq}

Пробуй!

Ссылка на сообщение
Поделиться на других сайтах

пока топик не закрыли, ещё вопрос, а если icq не указана, как сделать чтобы бы писало "нет данных" ?

я знаю что это engine/modules/show.short.php но какие аргументы условия ставить, путаюсь :(

Ссылка на сообщение
Поделиться на других сайтах

я тоже новичек, сделал всё как написано, на главной всё супер а когда перехожу к новости то не отображает (((

полагаю, надо еще в engine.php править это:

// ################ Новость целиком #################

	if ($subaction != '' OR $newsid) {

		if (!$newsid)

		$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access FROM " . PREFIX . "_post WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR LIMIT 0,1";


		else

	$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, FROM " . PREFIX . "_post where  id = '$newsid' LIMIT 0,1";

тока вот как? :)))

Ссылка на сообщение
Поделиться на других сайтах

1ce, так а посмотрет ькак я делал дял короткой новости нельзя? Эдак ты ничему не научишься...

// ################ Новость целиком #################

	if ($subaction != '' OR $newsid) {

		if (!$newsid)

		$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND u.name = p.autor LIMIT 0,1";


		else

	$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u where  id = '$newsid' AND u.name = p.autor LIMIT 0,1";

Ссылка на сообщение
Поделиться на других сайтах

1ce, так а посмотрет ькак я делал дял короткой новости нельзя? Эдак ты ничему не научишься...

да я смотрел.. пробовал.. не получалось.. я ж тока начал изучать php и mysql ...

спсб!

Изменено пользователем 1ce
Ссылка на сообщение
Поделиться на других сайтах

1ce, так а посмотрет ькак я делал дял короткой новости нельзя? Эдак ты ничему не научишься...

// ################ Новость целиком #################

	if ($subaction != '' OR $newsid) {

		if (!$newsid)

		$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND u.name = p.autor LIMIT 0,1";


		else

	$sql_news = "SELECT id, autor, date, short_story, full_story, xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u where  id = '$newsid' AND u.name = p.autor LIMIT 0,1";
сделал я так. и в engine/modules/show.full.php добавил $tpl->set('{icq}', stripslashes($row['icq'])); но, не пашет отображение icq в фулл новости, ошибку выдает:
MySQL Error! 

------------------------


The Error returned was: 

Column 'xfields' in field list is ambiguous 


Error Number: 

1052

сдается мне, что-то не то с запросом к базе..;)

Изменено пользователем 1ce
Ссылка на сообщение
Поделиться на других сайтах

1ce, да да, забыл xfields отметить, что брать его нужно из таблицы новостей, а то mysql видит столбик xfields в обоих таблицах - не знает какой выбрать :)

// ################ Новость целиком #################

	if ($subaction != '' OR $newsid) {

		if (!$newsid)

		$sql_news = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE alt_name ='$news_name' AND date >= '{$year}-{$month}-{$day}' AND date < '{$year}-{$month}-{$day}' + INTERVAL 24 HOUR AND u.name = p.autor LIMIT 0,1";


		else

	$sql_news = "SELECT id, autor, date, short_story, full_story, p.xfields, title, category, descr, keywords, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, approve, votes, access, u.icq FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u where  id = '$newsid' AND u.name = p.autor LIMIT 0,1";

Ссылка на сообщение
Поделиться на других сайтах

да да, забыл xfields отметить, что брать его нужно из таблицы новостей, а то mysql видит столбик xfields в обоих таблицах - не знает какой выбрать :)

о, все, заработало, пасиба :))))

Ссылка на сообщение
Поделиться на других сайтах
  • 1 месяц спустя...

Да пробывал только выводил аватары авторов в короткой и полной новости и получал следующую картину:

1. На главной и далее по навигации - аватар автора выводится, ссылка на полную новость работает, аватар в полной новости работает.

2. В категориях - аватар выводится у всех noavatar.png, ссылка на полную новость не работает.

Значит есть проблема вывода аватара в катерогиях. Просим помочь в этом вопросе.

Ссылка на сообщение
Поделиться на других сайтах

2. В категориях - аватар выводится у всех noavatar.png, ссылка на полную новость не работает.
как так не работает?

Так я почему спрашивал насчёт "пробывали"? потому что следующий шаг - что именно меняли в файлах?

Ссылка на сообщение
Поделиться на других сайтах

Чистый движок версия 6.5

Мои изменения:

engine.php

строка 285

$sql_select = "SELECT id, autor, date, short_story, SUBSTRING(full_story, 1, 15) as full_story, p.xfields, title, category, alt_name, p.comm_num, allow_comm, allow_rate, rating, vote_num, news_read, flag, u.foto FROM " . PREFIX . "_post p, " . USERPREFIX . "_users u WHERE {$stop_list}approve = '1' AND allow_main = '1'".$where_date." AND u.name = p.autor ORDER BY fixed desc, ".$config['news_sort']." ".$config['news_msort']." LIMIT ".$cstart.",".$config['news_number'];
show.short.php строка 293 до
if ($view_template == "rss")
Вставил
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");

Везде в категориях в коротких выводится noavatar.png

PS в посте №21 использовалась версия 6,3 с модулями, вот решил поработать с чистой версией

Изменено пользователем DocentX
Ссылка на сообщение
Поделиться на других сайтах

всё правильно)

Теперь по такому же принципу в файле engine.php меняем запрос, касающийся категорий.

Находим комментарий

// ################ Вывод отдельной категории #################
и ниже запрос
$sql_select = "SELECT

в чистом дле 175-я строчка

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...