Mod. Gotowe < [ 1.9.5 ] - Jak umiescic informacje z forum na stronie glownej
MarX - 03-06-2005, 06:39
Przyłanczam się do pytania Gaw-a, da się wyciągnąć ankietę z phpbb ??? bardzo i to bardzo mi na tym zalezy
Pozdrawiam...
KlonAdam - 08-07-2005, 20:43
probuję coś z tym zrobić ale nic mi nei wyświtala na stronie, co mozę być przyczyną tego ?? na stronę dodałem : Kod: | <?php
$recent_topics_menu = '';
if ( $portal_config['value_recent_topics'] > 0 )
{
$sql = "SELECT * FROM ". FORUMS_TABLE . " WHERE forum_id=25 ORDER BY forum_id";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query forums information', '', __LINE__, __FILE__, $sql);
}
$forum_data = array();
while( $row = $db->sql_fetchrow($result) )
{
$forum_data[] = $row;
}
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_ALL, AUTH_LIST_ALL, $userdata, $forum_data);
$except_forum_id = ( $portal_config['except_forum'] == '' ) ? '\'start\'' : $portal_config['except_forum'];
for ($i = 0; $i < count($forum_data); $i++)
{
if ((!$is_auth_ary[$forum_data[$i]['forum_id']]['auth_read']) or (!$is_auth_ary[$forum_data[$i]['forum_id']]['auth_view']))
{
if ($except_forum_id == '\'start\'')
{
$except_forum_id = $forum_data[$i]['forum_id'];
}
else
{
$except_forum_id .= ',' . $forum_data[$i]['forum_id'];
}
}
}
$sql = "SELECT topic_id, topic_title
FROM " . TOPICS_TABLE . "
WHERE forum_id NOT IN (" . $except_forum_id . ")
AND topic_status <> 2
ORDER BY topic_time DESC
LIMIT " . $portal_config['value_recent_topics'] . "";
if (!$result = $db->sql_query($sql))
{
message_die(GENERAL_ERROR, 'Could not query recent topics information', '', __LINE__, __FILE__, $sql);
}
$recent_topic_row = array();
if ( $portal_config['scroll_recent_topics'] )
{
$recent_topics_menu = '<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline"><tr><td align="'.$portal_config['recent_topics_a'].'" class="catHead" height="25"><span class="genmed"><b>' .$lang['Recent_topics']. '</b></span></td></tr><tr><td class="row1"><span align="right"class="gensmall"><marquee id="recent_topics" behavior="scroll" direction="up" height="200" scrolldelay="100" scrollamount="2">';
while ($row = $db->sql_fetchrow($result))
{
$recent_topics_menu .= '» <a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $row['topic_id']) . '" " class="mainmenu" onMouseOver="document.all.recent_topics.stop()" onMouseOut="document.all.recent_topics.start()">' . $row['topic_title'] . '</a><br /><br />';
}
}
else
{
$recent_topics_menu = '<table width="100%" cellpadding="2" cellspacing="1" border="0" class="forumline"><tr><td align="'.$portal_config['recent_topics_a'].'" class="catHead" height="25"><span class="genmed"><b>' .$lang['Recent_topics']. '</b></span></td></tr>';
while ($row = $db->sql_fetchrow($result))
{
$recent_topic_row[] = $row;
$recent_topics_menu .= '<tr><td class="row1" align="' . $portal_config['recent_topics_a'] . '"><span class="gensmall">» <a href="' . append_sid("viewtopic.$phpEx?" . POST_TOPIC_URL . '=' . $row['topic_id']) . '" " class="mainmenu">' . $row['topic_title'] . '</a></span></td></tr>';
}
}
$recent_topics_menu .= '</marquee></span></td></tr></table><br />';
}
?> |
Anonymous - 09-07-2005, 15:47
Witam
zastosowalem na swojej stronie kod ktory byl podany na poczatku tego tematu. Wszystko fajnie sie wyswietla tylko zamiast litery ś wyswietlaja sie krzaczki. Czy ktos z Was wie moze jak sie tego pozbyc?
Pozdrawiam
Crack - 10-07-2005, 14:38
Na stronie musisz mieć takie samo kodowanie znaków jak na forum (znacznik META Content-Type w HEAD). Na 99% prawidłowe kodowanie to iso-8859-2.
KlonAdam - 10-07-2005, 17:37
a co z tymi newsami ??? wie ktoś ??
irekk - 10-07-2005, 19:56
KlonAdam, ty w tym swoim skrypcie nawet nie masz funckji laczacej z baza danych forum pozatym nawet nie zaincludeowales lang'a w ten sposob ci to nie pojdzie.
KlonAdam - 10-07-2005, 20:00
qbs napisał/a: | KlonAdam, ty w tym swoim skrypcie nawet nie masz funckji laczacej z baza danych forum pozatym nawet nie zaincludeowales lang'a w ten sposob ci to nie pojdzie. | ale to nie mój skrypt tylko skrypt z kilku postów wstecz, ja szukam porządnego skryptu który będzie działać, próbowałem wszystkich ale coś mi ni działają może byś zapodał prawidłowy ???
irekk - 10-07-2005, 20:05
looknij w pierwszy post tamten powinien dzialac wkoncu przemo go pisal
KlonAdam - 10-07-2005, 20:37
ale mi chodzi o newsy a nie o ostatnie tematy
art182 - 10-07-2005, 22:44
mam prosbe ...
czy mógłby ktos zapodac kod do wyświetlenia liczby gosci oraz nicków na stronie ?
czyli zeby wyswietlic kto jest online na oddzielnej stronie ...
( nie interesuje mnie mod js_online )
vegetagt - 10-07-2005, 22:46
art182, jutro bo dziś późno a ja siły nie mam. Jak coś wykombinuje jutro to podrzuce Ci kod
[ Dodano: 11-07-2005, 10:48 ]
choć kompletnie nie mam na to pomysłu.. ale popróbuje
[ Dodano: 11-07-2005, 11:30 ]
dobra... cośtam zrobiłem
masz tu prosty skrypcik który pokazuje m in ile zarejestrowanych userów przegląda forum. Na reszte nie mam pomysłu
http://szczury.info/skrypt.txt
jakby coś to między pierwszym <? a ?> wrzucamy na sam początek pliku w którym ma to być, a drugie <? i ?> w miejsce gdzie ma pisać ile userów itp
art182 - 11-07-2005, 10:54
dzieki za probe pomocy ale troche nie o to chodzilo ...
tzn. o to ale juz mam cos takiego ... mam własnie skrypt js_online ( przerobiony na php )
problem w tym ze nie pasuje on do forum przema ... pokazuje inną liczbe gosci niz na forum
bo jak mniemam w przemie nie zliczane sa sesje z tym samym ip a js_online liczy wszystkie ...
no i dlatego zawyzona liczba na stronie ....
Kod: | // ONLINE
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata);
// Get user list
$sql = "SELECT u.user_id, u.username, u.user_allow_viewonline, u.user_level, u.user_rank, u.user_posts, s.session_logged_in, s.session_time, s.session_page, s.session_ip
FROM ".USERS_TABLE." u, ".SESSIONS_TABLE." s
WHERE u.user_id = s.session_user_id
AND s.session_time >= ".( time() - 300 ) . "
ORDER BY u.user_level ASC, u.username ASC, s.session_ip ASC";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Could not obtain regd user/online information', '', __LINE__, __FILE__, $sql);
}
$guest_users = 0;
$registered_users = 0;
$hidden_users = 0;
$online='';
$prev_ip = '';
while ( $row = $db->sql_fetchrow($result) )
{
$view_online = false;
if ( $row['session_logged_in'] )
{
$user_id = $row['user_id'];
if ( $user_id != $prev_user )
{
$username = color_username($user_id,$row['username'],$row['user_rank'],$row['user_posts'],USERNAME_STATIC);
if ( !$row['user_allow_viewonline'] )
{
$view_online = ( $userdata['user_level'] == ADMIN ) ? true : false;
$hidden_users++;
$username = '<i>' . $username . '</i>';
}
else
{
$view_online = true;
$registered_users++;
}
$prev_user = $user_id;
}
}
else
{
if ( $row['session_ip'] != $prev_ip )
{
$guest_users++;
}
}
if ( $view_online )
{
$online.= ' <a href="'.append_sid($path."profile.$phpEx?mode=viewprofile&" . POST_USERS_URL . '=' . $user_id).'">'.$username.'</a><BR>';
}
}
$all = $registered_users + $hidden_users + $guest_users;
// koniec phpbb |
moze ktos umiałby cos tu zmienic / dorobic tak aby skrypt nie zliczał sesji z tym samym IP ...
medard - 15-08-2005, 15:22
zainstalowałem wszystkie pliki, a topics_anywhere nadal nie chodzi dlaczego ???????
tujek - 16-08-2005, 11:17
JAk nie?
http://www.ameryka.only.p...cs_anywhere.php
ematys - 19-08-2005, 06:57 Temat postu: Re: Jak umiescic informacje z forum na stronie glownej Oto cytat Przema odnośnie dodawania modów do stron dodatkowych. Ale dla mnie to zamało!!!
Chciałbym skorzysać jeszcze z modów jakie są na stronie portal.php Takich jak Kto jest na forum, statsystyki, szybka rejestracja, dzisiaj (!), naj aktywniejsi, oraz loguj... Proszę o szybką pomoc...
Przemo napisał/a: | Jezeli forum jest dodatkiem do strony glownej a chcemy na niej dac jakies informacje z forum, to musimy stworzyc plik *.php ktory bedzie wygladal tak: Kod: | <?php
// Definiujemy ze ta strona nalezy do forum
// Osoby przegladajace ta strone beda akceptowane przez forum jako osoby ktore sa na forum
define('IN_PHPBB', true);
$phpbb_root_path = './forum/';
// Tutaj podajemy katalog forum w tym przypadku mamy katalog np. "strona"
// w nim plik w ktorym wklejamy ten kod a forum mamy w katalogu "forum"
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
//----- Poczatek modulu 1
// Pobieramy licznk wizyt z forum (wartosc pojedyncza)
// Ponizej podajemy nazwe tabeli
// w tym przypadku jest to: "config" (phpbb_config przedrostek jest wykrywany samoczynnie)
$sql = "SELECT * FROM " . $table_prefix . "config
WHERE config_name = 'visitors'";
// Powyzej podajemy ktore pole chcemy odczytac w tym przypadku "visitors" z kolumny "config_name" licznik wejsc
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Blad odczytu pola', $sql);
}
$get_sql = $db->sql_fetchrow($result);
$wynik = $get_sql['config_value'];
// Odczyt wartosci z kolumny "config_value"
echo "$wynik";
//----- Koniec modulu 1
//----- Poczatek modulu 2
// Pobieramy liste 10-ciu ostatnich tematow napisanych na forum (wiele wartosci wiec zrobimy petle)
// Uwaga, pokaze tez tematy z ukrytych for.
$ilosc_tematow = '10';
// Ponizej podajemy nazwe tabeli
// w tym przypadku jest to: "topics" (phpbb_topics przedrostek jest wykrywany samoczynnie)
$sql = "SELECT topic_title FROM " . $table_prefix . "topics
ORDER BY topic_time DESC
LIMIT $ilosc_tematow";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Blad odczytu pola2', $sql);
}
if ( $row = $db->sql_fetchrow($result) )
{
$i = 0;
do
{
$wynik = $row['topic_title'];
echo "<br>$wynik<br>";
// Wyswietlamy wynik $i razy
$i++;
}
while ( $row = $db->sql_fetchrow($result) );
}
// Dodatkowo jezeli chcieli bysmy zeby tytuly tematow byly linkami do tematow to musimy:
// 1. zamienic: SELECT topic_title na: SELECT topic_title, topic_id
// 2. zamienic: echo "<br>$wynik<br>"; na: echo "<br><a href=\"http://adres.forum.pl/viewtopic.php?t=$row[topic_id]\">$wynik</a><br>";
//----- Koniec modulu 2
?> | Przed znakiem <?php i za znakiem ?> może byc kod html reszty strony. a w: echo"tych miejscach tez może byc dowolny kod html ale " musimy zamienic na \" koniec";
Tym sposobem możemy umiescic na stronie dowolne informacje z forum |
|
|
|