PL|imac 0 Report post Posted January 31, 2005 (edited) Hi liebes IPB-Support Team, ich möchte die jeweils aktiven User meines IPB1.3 auf einer externen Site (der Webserver ist derselbe) untereinander aufgelistet anzeigen. Es wäre nice, wenn Diese auch noch anklickbar wäre und man dadurch zu deren Profil geleitet wird. Noch ne 2. Frage anbei (passt nich so ganz zum Topic), ist es möglich dann dieses Userprofil mit einem anderen Template anzeigen zu lassen (ähnlich wie bei der ssi.php, wo ich für die News auch ein eigenes Template benutzen kann) ? Viel Dank im voraus. Edited January 31, 2005 by PL|imac Share this post Link to post
kingofcomedy 0 Report post Posted January 31, 2005 ich möchte die jeweils aktiven User meines IPB1.3 auf einer externen Site (der Webserver ist derselbe) untereinander aufgelistet anzeigen. Es wäre nice, wenn Diese auch noch anklickbar wäre und man dadurch zu deren Profil geleitet wird. Schau dir mal den Anfang der ssi.php an, denn dort steht: To show the active users stats (x Members, X Guests, etc) include("http://domain.com/forums/ssi.php?a=active"); :) Share this post Link to post
PL|imac 0 Report post Posted January 31, 2005 Hi, danke erstmal. Aber das ist nicht ganz was ich suche. Mit der activ-Funktion aus der ssi.php wird ja nur die Anzahl der gerade aktiven User im Forum angezeigt. Ich möchte aber jeden einzelnen User untereinander aufgelistet haben. Gruss imac Share this post Link to post
Helge 192 Report post Posted January 31, 2005 Dafür kannst du das IPBSDK nehmen. Klick. Dort gibts schon Beispiel Scripts, musst es dir nur noch anpassen, wenn du die Anzeige verändern möchtest. :) Share this post Link to post
kingofcomedy 0 Report post Posted January 31, 2005 (edited) Hi, danke erstmal. Aber das ist nicht ganz was ich suche. Mit der activ-Funktion aus der ssi.php wird ja nur die Anzahl der gerade aktiven User im Forum angezeigt. Ich möchte aber jeden einzelnen User untereinander aufgelistet haben. Gruss imac Sorry, mein Fehler Aber wenn du folgenden Code noch in die ssi.php einfügst, dann klappt es auf jeden Fall //+------------------------------------------------- // Display who's Currently Online // By: KaLiTe (ibf@kalite.de) //+------------------------------------------------- function do_online() { global $DB, $ibforums, $root_path, $templates_dir, $std; $template = load_template("online.html"); $to_echo = ""; // Get the topics, member info and other stuff $time = time() - 900; $DB->query("SELECT s.member_id, s.member_name, s.login_type, g.suffix, g.prefix FROM ibf_sessions s, ibf_groups g WHERE running_time > '$time' AND g.g_id=s.member_group ORDER BY running_time DESC"); // cache all printed members so we don't double print them $cached = array(); $active = array(); while ($result = $DB->fetch_row() ) { if ($result['member_id'] == 0) { $active['GUESTS']++; } else { if (empty( $cached[ $result['member_id'] ] ) ) { $cached[ $result['member_id'] ] = 1; if ($result['login_type'] == 1) { $active['ANON']++; } else { $active['MEMBERS']++; } } } } $active['TOTAL'] = $active['MEMBERS'] + $active['GUESTS'] + $active['ANON']; $DB->query("SELECT s.member_id, s.member_name, s.login_type, g.suffix, g.prefix FROM ibf_sessions s, ibf_groups g WHERE running_time > '$time' AND g.g_id=s.member_group ORDER BY running_time DESC"); // cache all printed members so we don't double print them $cached = array(); while ($result = $DB->fetch_row() ) { if (empty( $cached[ $result['member_id'] ] ) && $result['member_name'] != "" ) { $cached[ $result['member_id'] ] = 1; if ($result['login_type'] != 1) { $active['NAMES'] .= " <span id='highlight'>></span> <a href='{$ibforums->vars['board_url']}/index.{$ibforums->vars['php_ext']}?s={$ibforums->session_id}&act=Profile&MID={$result['member_id']}'>{$result['prefix']}{$result['member_name']}{$result['suffix']}</a><br>"; } } } if (!isset($active)) $active['NAMES'] = "<i>none</i>"; $to_echo = parse_template( $template, array ( 'online_users' => $active['NAMES'], 'total' => $active['TOTAL'] ? $active['TOTAL'] : 0 , 'members' => $active['MEMBERS'] ? $active['MEMBERS'] : 0, 'guests' => $active['GUESTS'] ? $active['GUESTS'] : 0, 'anon' => $active['ANON'] ? $active['ANON'] : 0 )); echo $to_echo; exit(); } Unter case 'news': do_news(); break; jetzt noch folgendes einfügen: case 'online': do_online(); break; Die online.html im Ordner "ssi_templates" kann dann z.B. so aussehen: <table border="0"> <tr> <td>{members} Mitglieder im Forum</td> </tr> <tr> <td>{online_users}<br>> {guests} Gäste<br>> {anon} Anonyme</td> </tr> </table> Eingebunden wird die Liste dann so: <? require("http://www.deinedomain.de/ssi.php?a=online"); ?> BTW: Ein ipbsupport.de - mod könnte mal die gefixte ibfcode.js hochladen, damit es für FF-User ein wenig einfacher wird, die Code- bzw. Quote-Tages zu nutzen Sorry, dass ich ein wenig die Optik des Thread versaut habe :D Edited January 31, 2005 by kingofcomedy Share this post Link to post
PL|imac 0 Report post Posted January 31, 2005 Vielen Dank kingofcomedy. Ich probier das gleich aus. @rigo ich habe vorige Woche versucht, das SDK 1.5 für mein IPB 1.3 zu installieren, leider verursachte die Installation einen Fehler. ICh probier erstmal kingofcomedys Variante aus. Aber das SDK muss auch irgendwann mal laufen . gruss imac Share this post Link to post
kingofcomedy 0 Report post Posted February 1, 2005 Meine Variante wird auf jeden Fall funktionieren, ausser ich habe einen Fehler gemacht :) Share this post Link to post
PL|imac 0 Report post Posted February 1, 2005 @king Hat auch einwandfrei funktioniert. Die Formatierung der Namen (Farbe + text-decoration) habe ich dann in den User&Gruppeneinstellungen im Board-ACP vorgenommen. Also vielen Dank nochmal. *ganze Dose voller Kekse rüberschieb* P.S.: Zu Frage wegen einem extra Template für die Profilinformationen der User erstelle ich am besten einen neuen Thread. Share this post Link to post