Jump to content
InvisionCommunity.de - Der Deutsche Invision Community Support
Sign in to follow this  
PL|imac

aktive Member auf externer Site anzeigen

Recommended Posts

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 by PL|imac

Share this post


Link to post

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

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

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 :blush:

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'>&gt;</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>&gt; {guests} Gäste<br>&gt; {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 by kingofcomedy

Share this post


Link to post

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

@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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this  

×