Не нравятся результаты поиска? Попробуйте другой поиск!
DLE FAQ » Все вопросы » Модули » Вывести дополнительые данные из таблицы

Вывести дополнительые данные из таблицы


     13.06.2014    Модули, Хаки, MySQL    2741

вопрос
Добавил я в таблицу dle_post еще 1 поле - называется оно onlines
1) Мне очень хочется что бы при выводе новостей это поле тоже можно было вывести в shortstory. Да, можно зафигачить в shortstory запрос на SELECT onlines from dle_post where id=`{news-id}` но это на страницу выйдет 20 запросов (у меня 20 новостей на странице)...


2) Так же я был бы вам благодарен, если бы вы мне сказали какой php код вставить в shortstory что бы он выполнял запрос в БД примерно такого типа (например при нажатии на кнопку)

UPDATE `dle_post` SET `onlines` = '12345' WHERE `id`=`{news-id}`


Скажите правильно ли вот так:

 
<?php
$db->query("UPDATE `dle_post` SET `onlines` = '12345' WHERE `id`=`{news-id}`");
?>

Ответа пока нет


7 комментариев

lutskboy
Эксперт

lutskboy - 13 июня 2014 16:33 -

1. Просто впишите в show.short.php (там где идет уже обработка тегов шаблона) следующий код.
$onlines = $row['onlines'];
$tpl->set( '{onlines}', $onlines );
А в shortstory.tpl вставляешь тег {onlines}

vitnet
PHP-developer

vitnet - 13 июня 2014 17:04 -

+ дописать p.onlines в запросы в файле engine.php

lutskboy
Эксперт

lutskboy - 13 июня 2014 17:08 -

vitnet,
Вроде в новых версиях дле идет выборка по всем полям.
SELECT *... Или я не прав?

vitnet
PHP-developer

vitnet - 13 июня 2014 17:13 -

Вы не правы
$sql_select = "SELECT p.id, p.autor, p.date, p.short_story, CHAR_LENGTH(p.full_story) as full_story, p.full_story, p.xfields, p.title, p.category, p.alt_name, p.comm_num, p.allow_comm, p.fixed, p.tags, e.news_read, e.allow_rate, e.rating, e.vote_num, e.votes, e.view_edit, e.editdate, e.editor, e.reason FROM " . PREFIX . "_post p LEFT JOIN " . PREFIX . "_post_extras e ON (p.id=e.news_id) WHERE {$stop_list}approve=1 AND allow_main=1" . $where_date . " ORDER BY " . $fixed . $news_sort_by . " " . $news_direction_by . " LIMIT " . $cstart . "," . $config['news_number'];

lutskboy
Эксперт

lutskboy - 13 июня 2014 17:21 -

А. Ну да. Значит это в полной новости идет выборка по всем полям.

shadow6630
Юзер

shadow6630 - 13 июня 2014 20:39 -

lutskboy, Обычно делается два запроса: в первом делается выборка по нужным полям конкретной таблицы, а в другом - выборка по всем записям с этой таблицы, вот какраз в этом запросе и используется "*"

ychelovek33
Юзер

ychelovek33 - 13 июня 2014 17:55 -

Спасибо буду пробовать)))

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы

наверх