j0k3r Опубликовано 12 Июня 2003 Жалоба Поделиться Опубликовано 12 Июня 2003 Хочется сделать новост на главной странице сайта... Было много идей ... Пока вот основная:При создании темы у тех людей, кто принадлежит группе авторов (или не группе - как-то отмечен, короче) , появляется checkbox под "Хотите включить смайлики в этом сообщении?", который гласит "Отправить новость на сайт".. Если там поставить галку, то при отправке сообщения надо, чтобы в отдельную ?базу?, а можно и таблицу , копировалось название и содержание темы, ник автора, дата, ссылка на этот топик и номер раздела! А для всего остального будет написан скрипт новостей, который будет обрабатывать эту таблицу! Очень нужно - прошу помочь! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Barmaley1980 Опубликовано 12 Июня 2003 Жалоба Поделиться Опубликовано 12 Июня 2003 хм, и зачем огород городить? чем тебя через ssi.php?a=news не устраивает? даёш нужным людям право постить в форуме новости, остальным только ответы. и всё. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 12 Июня 2003 Автор Жалоба Поделиться Опубликовано 12 Июня 2003 А вот и не огород!Не зочу я , чтобы всё кидалось в раздел новости.Просто загляни на мой форум (ссылка в подписи)...Я же не могу обсуждать новые фильмы и в "Новостях" и в "Кино и Театры". Поэтому мне нужен вывод новостей из разных разделов. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 12 Июня 2003 Жалоба Поделиться Опубликовано 12 Июня 2003 Тут задача то всего навсего вывод этой опции добавки новости.Вот примерный путь ее решения:При отправке темы до вывод шаблона странийы отправки проверяем принадлежит ли пользователь к группе ньюсмейкеров.Если принадлежит, то выводим этот чекбокс, иначе пустое место. Далее при отправке темы, снова проверяем принадлежит ли человек к группе и отметил ли он чекбокс, если оба условия выполнены, то помимо добавки в саму базу постов, добавляем новость еще и в таблицу новостей. Все достаточно просто. Жалко что я не знаю структуры ipb и манеры его работы с шаблонами, так бы написал. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Valera Опубликовано 12 Июня 2003 Жалоба Поделиться Опубликовано 12 Июня 2003 Предлагаю сделать так, создать форум, и дать на него доступ только тем кто может подавать новости, а дальше все просто, chaif уже в этом форуме описывал скрипт который выводит новости из определенного форума, соб-сно ентот код и юзаем. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 12 Июня 2003 Жалоба Поделиться Опубликовано 12 Июня 2003 Valera мне нужен вывод новостей из разных разделов. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 13 Июня 2003 Автор Жалоба Поделиться Опубликовано 13 Июня 2003 Vanish Я так и сказал Valera Мне надо из разных разделов Загляните в мою подпись - вам станет понятно, почему Vanish Спасиб Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 13 Июня 2003 Жалоба Поделиться Опубликовано 13 Июня 2003 j0k3r вот короче посмотрел твою проблему и сделал следующее: Файл Sources\Post.phpИщем строчку /*****************************************************/ // HTML: mod_options. // ------------------ // Returns the HTML for the mod options drop down box /*****************************************************/ function mod_options($is_reply=0) { перед ней вставляем функцию для проверки пользователя его возможность добавки новостейесли пользователь у нас админ (принадлежит к группе №4) то мы выведим опцию добавления новости, иначи фигу с маслом... /*****************************************************/ // HTML: add_news. // ------------------ // Returns the HTML code of addnews field if user is newsmaker /*****************************************************/ function add_news() { global $ibforums; if ($ibforums->member['mgroup'] == 4) { return $this->html->newsField(); } else { return ""; } } Едем дальше. На очереди шаблон. Я изменял стандартный.Файл Skin\s1\skin_post.php.php После строчкиclass skin_post { Добавляем сосбтвенно опцию выбора добавки новости: function newsField() { global $ibforums; return <<<EOF <tr> <td class="row1">Добавить как новость?</td> <td class="row1" width="100%"><input type=radio name=asnews value=yes>Да <input type=radio name=asnews value=no checked>Нет</td> </tr> EOF; } Вот так дешево и сердито...Спускаемся ниже и вылавливаем строчкуfunction table_structure() { global $ibforums; return <<<EOF <!--START TABLE--> Тут раздолье для творческих натур, нужно в теле этой функции разместить строчку <!--NEWS FIELD--> Я как не особо творческая натура сделал так:function table_structure() { global $ibforums; return <<<EOF <!--START TABLE--> <!--NAME FIELDS--> <!--TOPIC TITLE--> <!--NEWS FIELD--> <!--POLL BOX--> <!--POST BOX--> <!--QUOTE BOX--> <!--POST ICONS--> <!--UPLOAD FIELD--> <!--MOD OPTIONS--> <!--END TABLE--> EOF; } С шаблонами у нас все, едем дальше, файл sources\lib\post_new_post.phpИщем строчку: //------------------------------------------------- // Insert the topic into the database to get the // last inserted value of the auto_increment field // follow suit with the post //------------------------------------------------- $db_string = $DB->compile_db_insert_string( $this->topic ); Перед ней собственно анализатор добавить в новости или так сойдет...Собственно сам анализатор я писюкать не стал, ибо мне не понятно в какую таблицу, базу должна эта новость идитить. Вот что я написал туда if ($ibforums->input['asnews'] == 'yes') { echo "yahooЕЮ это же новость!!!"; exit; } Вот собственно и все.. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 14 Июня 2003 Автор Жалоба Поделиться Опубликовано 14 Июня 2003 Vanish Wow! И это будет работать? Как смогу - сразу проверю!Спасибо огромное! Ну разве это не круто? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
IBResource Опубликовано 14 Июня 2003 Жалоба Поделиться Опубликовано 14 Июня 2003 Ну разве это не круто Круто. Видишь есть время - есть решение Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 15 Июня 2003 Автор Жалоба Поделиться Опубликовано 15 Июня 2003 А можно сделать, чтобы новости можно было удалять?И чтобы добавлять можно было, добавляя пост, а не создавая новый топик?? ээээ...... а теперь это будет через ssi.php пахать? Oska Времени катастрофически не хватает + проблемы ... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 15 Июня 2003 Жалоба Поделиться Опубликовано 15 Июня 2003 j0k3r это уже скриптом для новостей делайте. Тут я уже помочь не могу пока скрипт новостей не увижу. И чтобы добавлять можно было, добавляя пост, а не создавая новый топик??это можно сделать (кстати предыдущий скрипт Вы еще не смотрели =))в общем в догонку и к той модификации и к этой:в файлах post_new_post.php и post_reply_post.phpищем//--------------------------------------- $class->html_add_smilie_box(); и перед ней добавляем $class->output = preg_replace( "/<!--NEWS FIELD-->/" , "$news_field" , $class->output ); чуть выше будет строчка//--------------------------------------- $class->output = preg_replace( "/<!--START TABLE-->/" , "$start_table" , $class->output ); теперь изменения только в файле post_reply_post.phpищем строку$db_string = $std->compile_db_string( $this->post ); и перед ней вставляемif ($ibforums->input['asnews'] == 'yes') { echo "yahooЕЮ это же новость!!!"; exit; } Вроде бы на этот раз ничего не забыл Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 15 Июня 2003 Автор Жалоба Поделиться Опубликовано 15 Июня 2003 Vanish Опа! Спасиб!Я просто понять не могу, где все эти новости будут сохраняться? То есть удаление и редактирование новостей прийдётся отдельно от форума делать? Добавлено: атьфу Перед ней собственно анализатор добавить в новости или так сойдет...Собственно сам анализатор я писюкать не стал, ибо мне не понятно в какую таблицу, базу должна эта новость идитить. а примерно можно?просто я сейчас в жуткой запарке - вот и туплю... сорри Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 15 Июня 2003 Жалоба Поделиться Опубликовано 15 Июня 2003 j0k3r вот примерно такой$DB->query("INSERT INTO your_news_table (id, topic_id, forum_id, start_date, title, post, starter_id, starter_name) VALUES (NULL, '".$this->topic['tid']."', '".$this->topic['forum_id']."', '".time()."', '".$this->topic['title']."', '".$this->post['post']."', '".$this->topic['starter_id']."', '".$this->topic['starter_name']."')"); Если будешь использовать этот пример помещай весь анализатор после строчек$this->topic['tid'] = $this->post['topic_id']; /*---------------------------------------------------*/ То есть удаление и редактирование новостей прийдётся отдельно от форума делать?Именно. Не стоит нагружать сам ипб не по делу. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 18 Июня 2003 Автор Жалоба Поделиться Опубликовано 18 Июня 2003 Vanish Код function table_structure() {global $ibforums;return <<<EOF<!--START TABLE--><!--NAME FIELDS--><!--TOPIC TITLE--><!--NEWS FIELD--><!--POLL BOX--><!--POST BOX--><!--QUOTE BOX--><!--POST ICONS--><!--UPLOAD FIELD--><!--MOD OPTIONS--><!--END TABLE-->EOF;}А вот зачем это - поясни, plz... Просто не могу понять, где это обрабатывается? А можно добавить возможность "деланья" чужого поста новостью? То есть кто-то что-то запостил, а пришёл админ (админ - другая группа, не группа авторов) и сделал его пост новостью? +++Так... я ещё что-то хотел спросить, но уже забыл... кхе... вспомню - скажу..Огромное спасибо Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
GiV Опубликовано 18 Июня 2003 Жалоба Поделиться Опубликовано 18 Июня 2003 А вот зачем это - поясни, plz...Это пример того как я вставил <!--NEWS FIELD-->, а сама эта функция отвечает за положение элементов в форме осоздания темы. А можно добавить возможность "деланья" чужого поста новостью?Не вижу проблемы. Если надо то могу написать. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 18 Июня 2003 Автор Жалоба Поделиться Опубликовано 18 Июня 2003 Vanish Спасибо за пояснение... Да, я думаю, что это было бы неплохо... Я пока думаю, что бы ещё добавить... Спасибо большое! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
j0k3r Опубликовано 26 Июня 2003 Автор Жалоба Поделиться Опубликовано 26 Июня 2003 Эм...if ($ibforums->input['asnews'] == 'yes') { echo "yahooЕЮ это же новость!!!"; exit; }Куда вставлять? Пока что я получил только Parse error: parse error in /home/funky/public_html/forum/sources/Post.php on line 783при попытке создать тему... Добавлено: Vanish j0k3r это уже скриптом для новостей делайте. Тут я уже помочь не могу пока скрипт новостей не увижу.А я думаю его по ходу писать... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.