Отображение новостей

Использование системы в различных ситуациях, вопросы программирования сценариев.

Модератор: immortal

Antonq
Сообщения: 39
Зарегистрирован: Пн окт 07, 2013 6:15 pm

Re: Отображение новостей

Сообщение Antonq »

вообщем понял одну вещь, что бы было по человечески нужно сделать приложение(цель поставлена)
Так как тут придется подключать PHP файл
так же шаблоны делать я не умею, так что html вшит в код, буду рад совету и подправлю!
Но что бы работало уже сегодня можно сделать вот так:
1. В месте где нужно вставить новости, я так понимаю это можно даже сделать в меню слева

Код: Выделить всё

<div style="text-align:center; border:1px; font-family: verdana; font-size:12;"><IFRAME SRC="/php_scripts/listnews.php" style="width:500px; height:500px; text-align:center; border:0px;"CROLLING="no" [NORESIZE]>
</IFRAME></div>
- собственно тут можно в стилях задать параметры для отображения(шрифт цвет и самое главное это ширина окна, не помню как рамку сделать)
2. Добавил еще один метод ListNews(будет делать листинг) и свойство к классу ListN(кол-во новостей).
вот код метода:

Код: Выделить всё

$n=getGlobal('ThisNews.ListN');

$sql="SELECT *
FROM  `rss_items`
ORDER BY  rss_items.ADDED DESC
LIMIT 0 , ".$n;
$values=SQLSelect($sql);
$total=count($values);

for($i=0;$i<$total;$i++){

    $sql="SELECT *
FROM  `rss_items`
WHERE  ID =".$values[$i]['ID'];

    $value=SQLSelectOne($sql);

    echo "<a href=\"".$value['URL']."\" target=\"_blank\" >".$value['TITLE'].'</a><br><hr>';
    
}
- вот тут собственно то же где вывод ссылки

3. Создал в папке htdocs папку php_scripts и в ней файл listnews.php - именно с таким регистром
Текст файла:

Код: Выделить всё

<?
 chdir('../');
 include_once("./config.php");
 include_once("./lib/loader.php");


 $db=new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME); // connecting to database
 include_once("./load_settings.php");


 callMethod('ThisNews.ListNews');


?>
Мог что-то упустить:) Пишите!
Надеюсь написать приложени!
dmitriy77
Сообщения: 26
Зарегистрирован: Вт ноя 26, 2013 10:34 am

Re: Отображение новостей

Сообщение dmitriy77 »

у меня почему то ругается при вызове ReadNewN на неправильный SQL запрос

Код: Выделить всё

 http://192.168.10.2/objects/?object=ThisNews&op=m&m=ReadNewN&
Error:
1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''rss_items' 
WHERE ID >1' at line 2
SELECT * 
FROM 'rss_items' 
WHERE ID >1
таблица вроде не пустая, в PHPMyAdmin запрос работает... странно
Ubuntu 12.04.3 LTS, MajorDoMo 0.5.0b
dmitriy77
Сообщения: 26
Зарегистрирован: Вт ноя 26, 2013 10:34 am

Re: Отображение новостей

Сообщение dmitriy77 »

Разобрался... кавычки...
Ubuntu 12.04.3 LTS, MajorDoMo 0.5.0b
Jon2015
Сообщения: 28
Зарегистрирован: Чт фев 05, 2015 8:07 pm

Re: Отображение новостей

Сообщение Jon2015 »

Antonq писал(а):вообщем понял одну вещь, что бы было по человечески нужно сделать приложение(цель поставлена)
Так как тут придется подключать PHP файл
Надеюсь написать приложени!
Добрый день, удалось ли написать приложение?
Хотелось бы тоже, ленту с новостями на домашнюю страницу закинуть.
Аватара пользователя
Amarok
Сообщения: 1434
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Контактная информация:

Re: Отображение новостей

Сообщение Amarok »

Привинтил вывод новостей на домашнюю страницу. Вроде работает. Только выглядит страшно, но, думаю, со временем поправим)
И так; воспользовался я методом описанным выше, только чуть поправил его.

Это listnews.php из папки php_scripts (которая в htdocs):
SPOILERSPOILER_SHOW

Код: Выделить всё

<?
 chdir('../');
 include_once("./config.php");
 include_once("./lib/loader.php");

 $db=new mysql(DB_HOST, '', DB_USER, DB_PASSWORD, DB_NAME); // connecting to database
 include_once("./load_settings.php");

 callMethod("ThisNews.ListNews");
?>
А это моя версия метода ListNews (добавил вывод содержания новости):
SPOILERSPOILER_SHOW

Код: Выделить всё

$n=getGlobal('ThisNews.ListN');

$sql="SELECT *
FROM  `rss_items`
ORDER BY  rss_items.ADDED DESC
LIMIT 0 , ".$n;
$values=SQLSelect($sql);
$total=count($values);

for($i=0;$i<$total;$i++){

    $sql="SELECT *
FROM  `rss_items`
WHERE  ID =".$values[$i]['ID'];

    $value=SQLSelectOne($sql);

    echo "<a href=\"".$value['URL']."\" target=\"_blank\" >".$value['TITLE']."</a><br>".$value['BODY']."<hr>";
    
} 
"А теперь, попробуем на этой фигне взлететь" :D. Создаем домашнюю страницу с типом URL и ссылкой ./php_scripts/listnews.php.
Должно получиться примерно так:
Clipboard01.jpg
Clipboard01.jpg (83.92 КБ) 8580 просмотров
P.S.: А в идеале, хочется приложение/модуль :D

P.P.S: Экспортированный мой класс ThisNews
News.zip
(1023 байт) 261 скачивание
Последний раз редактировалось Amarok Ср фев 11, 2015 5:44 am, всего редактировалось 1 раз.
Моя Алиска живёт на Proxmox в Debian 12
Аватара пользователя
adzam
Сообщения: 607
Зарегистрирован: Сб дек 08, 2012 10:28 pm
Откуда: Кишинев

Re: Отображение новостей

Сообщение adzam »

Создаем домашнюю страницу с типом URL и ссылкой ./php_scripts/listnews.php.
Должно получиться примерно так:
Чего-то выходит пустая страница????
Мои проекты здесь...https://connect.smartliving.ru/profile/41/blog213.htm
Если вам помогло какое-либо мое сообщение - не ленитесь пользоваться кнопкой СПАСИБО.
Аватара пользователя
Amarok
Сообщения: 1434
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Контактная информация:

Re: Отображение новостей

Сообщение Amarok »

Вроде всё работает. Но исправил свое сообщение и прикрепил свой класс ThisNews (а удобненько так меняться :D )
Моя Алиска живёт на Proxmox в Debian 12
Аватара пользователя
Amarok
Сообщения: 1434
Зарегистрирован: Пт дек 14, 2012 12:24 pm
Откуда: Россия, Нижняя Тура
Контактная информация:

Re: Отображение новостей

Сообщение Amarok »

Новая версия RSS-читалки :)
Clipboard01.jpg
Clipboard01.jpg (51.8 КБ) 8499 просмотров
А вот измененный метод ListNews:

Код: Выделить всё

$n=getGlobal('ThisNews.ListN');

$sql="SELECT * FROM  `rss_items` ORDER BY  rss_items.ADDED DESC LIMIT 0 , ".$n;
$values=SQLSelect($sql);
$total=count($values);

echo "<style>.tableR {border-spacing: 3;border: 3px solid CornflowerBlue;border-radius: 10px;}</style>";

for($i=0;$i<$total;$i++){
 $sql="SELECT * FROM `rss_items` WHERE  ID =".$values[$i]['ID'];
 $value=SQLSelectOne($sql);
echo "<table bgcolor=#FDF5E6 class=tableR><tr><td bgcolor=#FFFFF0><a href=\"".$value['URL']."\" target=\"_blank\" >".$value['TITLE']."</a></td></tr><tr><td>";
echo $value['BODY'];
echo "</td></tr></table><br>";
}
 
Моя Алиска живёт на Proxmox в Debian 12
Ответить