C'est XPonline et xLogin.
Je ne suis cependant pas calé en php et j'ai une erreur avec mon nouveau bloc:
Citation :
Et voici le code:
- <?php
- // ----------------------------------------------------------------------
- // Module: xPLine Block v1.0
- // Author of modification: Anupthra http://www.t4all-design.net
- // Originals Authors: Codebird Design & Net-Team.Net
- // ----------------------------------------------------------------------
- // Original Author of file: Francisco Burzi
- // Purpose of file: count number of guests/members online
- // 20/09/2001 - modified sql to cope with there being 0 members online
- // Blok stworzony na podstawie oryginalnego bloku wchodzacego w sklad PostNuke
- // Blok stworzony przez Net-Team.Net http://www.net-team.net
- // zawiera pliki: onlineXP.php, oraz pliki jezykowe: angielski i polski
- // Wersja 1.1.1
- // -----------------------------------------------------------------------------
- // 09.07.2003
- // Changed again by Olaf Encke http://www.encke.net
- // Added show "Members Registered", show "Name of Members online",
- // show "New PrivMsgs", added "click on Member Name for PM",
- // fixed guest counter
- // included translations: english, german, french
- // Version 1.1.4oe
- // tested with PostNuke 0.761
- // ----------------------------------------------------------------------
- // This module is free software. You can redistribute it and/or modify
- // it under the terms of the GNU General Public License as published by
- // the Free Software Foundation; either version 2 of the License.
- // ----------------------------------------------------------------------
- $blocks_modules['xPLine'] = array(
- 'func_display' => 'blocks_xpline_block',
- 'text_type' => 'XPLine',
- 'text_type_long' => "User's XPLine",
- 'allow_multiple' => false,
- 'form_content' => false,
- 'form_refresh' => false,
- 'show_preview' => false
- );
- // Security
- pnSecAddSchema('XPLineblock::', 'Block title::');
- function blocks_xpline_block($row)
- {
- global $HTTP_SERVER_VARS;
- if (empty($row['title']))
- {
- $row['title'] = 'XPLine';
- }
- if (!pnSecAuthAction(0, 'XPLineblock::', "$row[title]::", ACCESS_READ))
- {
- return;
- }
- if (!pnUserLoggedIn())
- {
- $boxstuff = '<center><form action="user.php" method="post">';
- $boxstuff .= '<table border="0" cellspacing="0" cellpadding="1"><tr><td>';
- $boxstuff .= '<span class="pn-normal">'._BLOCKNICKNAME.'</span></td></tr><tr><td>';
- $boxstuff .= '<input type="text" name="uname" size="20" maxlength="25"></td></tr><tr><td>';
- $boxstuff .= '<span class="pn-normal">'._BLOCKPASSWORD.'</span></td></tr><tr><td>';
- $boxstuff .= '<input type="password" name="pass" size="20" maxlength="20"> ';
- if (pnConfigGetVar('seclevel') != 'High') {
- $boxstuff .= '<input type="checkbox" value="1" name="rememberme" id="rememberme" tabindex="0" />' . "\n";
- $boxstuff .= ' <label for="rememberme">'._REMEMBERME.'</label>' . "\n";
- $boxstuff .= '<br />' . "\n";
- }
- $boxstuff .= '<input type="submit" value="'._LOGIN.'" /></td><td>';
- $boxstuff .= '<input type="hidden" name="module" value="User" />';
- $boxstuff .= '<input type="hidden" name="op" value="login" />';
- $boxstuff .= '<input type="hidden" name="url" value="' .$HTTP_SERVER_VARS['REQUEST_URI'].'" /></td></tr><tr><td align="center">';
- $boxstuff .= '<span class="pn-normal">'._ASREGISTERED.' '._GETPASSWORD.'</span></td><td width="1px"></form></td></tr></table></center>';
- }
- else
- {
- $boxstuff = '- <a href="user.php">'._MYACCOUNT.'</a><br />';
- $boxstuff .= '- <a href="user.php?op=edituser">'._USEREDIT.'</a><br />';
- $boxstuff .= '- <a href="index.php?module=pnForum&func=prefs">'._FORUMEDIT.'</a><br />';
- $boxstuff .= '- <a href="user.php?op=editcomm">'._COMMENTSEDIT.'</a><br />';
- $boxstuff .= '- <a href="user.php?module=NS-User&op=logout"><b>'._LOGOUT.'</b></a>';
- }
- {
- list($dbconn) = pnDBGetConn();
- $pntable = pnDBGetTables();
- $numusers = 0;
- $numguests = 0;
- $unames = array();
- $sessioninfocolumn = &$pntable['session_info_column'];
- $sessioninfotable = $pntable['session_info'];
- $activetime = time() - (pnConfigGetVar('secinactivemins') * 60);
- $query = "SELECT $sessioninfocolumn[uid], count( 1 )
- FROM $sessioninfotable
- WHERE $sessioninfocolumn[lastused] > $activetime AND $sessioninfocolumn[uid] >0
- GROUP BY $sessioninfocolumn[uid]
- ";
- $result = $dbconn->Execute($query);
- $numusers = $result->RecordCount();
- for (; !$result->EOF; $result->MoveNext())
- {
- $unames[] = pnUserGetVar('uname', $result->fields[0]);}
- $result->Close();
- $query2 = "SELECT count( 1 )
- FROM $sessioninfotable
- WHERE $sessioninfocolumn[lastused] > $activetime AND $sessioninfocolumn[uid] = '0'
- GROUP BY $sessioninfocolumn[ipaddr]
- ";
- $result2 = $dbconn->Execute($query2);
- $numguests = $result2->RecordCount();
- $result2->Close();
- // $sessioninfocolumn = &$pntable['session_info_column'];
- // $sessioninfotable = $pntable['session_info'];
- // $activetime = time() - (pnConfigGetVar('secinactivemins') * 60);
- // $query = "SELECT $sessioninfocolumn[uid],
- // COUNT(1)
- // FROM $sessioninfotable
- // WHERE $sessioninfocolumn[lastused] > $activetime
- // GROUP BY $sessioninfocolumn[uid]";
- // $result = $dbconn->Execute($query);
- //
- //
- // for (; !$result->EOF; $result->MoveNext()) {
- // $unames[] = pnUserGetVar('uname', $result->fields[0]);
- // list($type, $num) = $result->fields;
- // if ($type == 0) {
- // $numguests = $num;
- // } else {
- // $numusers++;
- // }
- // }
- $result = $dbconn->Execute("SELECT COUNT(*) FROM $pntable[users] where pn_uname NOT LIKE 'Anonymous'");
- list($numrows) = $result->fields;
- $result->Close();
- // Pluralise
- if ($numguests == 1) {
- $guests = _GUEST;
- } else {
- $guests = _GUESTS;
- }
- if ($numusers == 1) {
- $users = _MEMBER;
- } else {
- $users = _MEMBERS;
- }
- $content = "<span class=\"pn-normal\"><img src=\"images/blocks/allmem.gif\" alt=\"\" align=\"absmiddle\"> "._MEMBERS.": ".pnVarPrepForDisplay($numrows)."<br/><img src=\"images/blocks/invt.gif\" alt=\"\" align=\"absmiddle\"> ".pnVarPrepForDisplay($guests)." "._ONLNE.": ".pnVarPrepForDisplay($numguests)."<br/><img src=\"images/blocks/miemb.gif\" alt=\"\" align=\"absmiddle\" vspace=\"2\"> ".pnVarPrepForDisplay($users)." "._ONLNE.": ".pnVarPrepForDisplay($numusers)."<br />\n";
- //Show online users
- if ($numusers > 0) {
- $boxstuff .= "<table align=\"center\" width=\"100%\" bgcolor=\"".$GLOBALS['bgcolor2']."\"><tr><td align=\"center\"><b>";
- foreach ($unames as $uname) { $content .= " <a href=\"modules.php?op=modload&name=Messages&file=replypmsg&send=1&uname=".pnVarPrepForDisplay($uname)."\">".pnVarPrepForDisplay($uname)."</a> "; }
- $boxstuff .="</b></td></tr></table>";
- }
- if (pnUserLoggedIn()) {
- $boxstuff .= '<br /><img src=images/blocks/authors.gif align=absmiddle>'._YOUARELOGGED.' <b>' .pnUserGetVar('uname') . '</b>.<br />';
- $column = &$pntable['priv_msgs_column'];
- $result2 = $dbconn->Execute("SELECT count(*) FROM $pntable[priv_msgs] WHERE $column[to_userid]=" . pnUserGetVar('uid'));
- list($numrow) = $result2->fields;
- // get unread messages
- $result3 = $dbconn->Execute("SELECT count(*) FROM $pntable[priv_msgs] WHERE $column[to_userid]=" . pnUserGetVar('uid') . " AND $column[read_msg]='0'");
- list($unreadrow) = $result3->fields;
- if ($numrow == 0) {
- $boxstuff .= '<br /></span>';
- } else {
- $boxstuff .= "<br /><img src=images/blocks/email.gif align=absmiddle vspace=2> "._YOUHAVE." (<a class=\"pn-normal\" href=\"modules.php?op=modload&name=Messages&file=index\">".pnVarPrepForDisplay($numrow)."</a>|<a class=\"pn-normal\" href=\"modules.php?op=modload&name=Messages&file=index\" title=\""._PRIVATEMSGNEW."\"><b>".pnVarPrepForDisplay($unreadrow)."</b></a>) ";
- if ($numrow==1) {
- $boxstuff .= _PRIVATEMSG ;
- }
- elseif ($numrow>1) {
- $boxstuff .= _PRIVATEMSGS ;
- }
- $boxstuff .= "</span><br />";
- }
- } else
- {
- $boxstuff .= '<br /><img src=images/blocks/anoni.gif align=absmiddle vspace=2> '._YOUAREANON.'</span><br />';
- }
- if (empty($row['title']))
- {
- $row['title'] = _WHOSONLINE;
- $row['content'] = $boxstuff;
- return themesideblock($row);
- }
- }
- ?>
Alors si quelqu'un pouvait être sympa pour me trouver la source du problème car j'ai beau chercher je ne trouve pas!
Je cherche à réaliser ce bloc pour mon site T4All.
Co-webmestre de PostNuke-France.
Avant toutes questions, veuillez lire les régles à suivre.




