phpfreechat Block wer ist im chat

Begonnen von nudels64, 28 Juni 2014, 12:16:27

⏪ vorheriges - nächstes ⏩

0 Mitglieder und 1 Gast betrachten dieses Thema.

nudels64

Hallo, hat es schon jemand hinbekommen einen Block zu erstellen, in dem angezeigt wird wer bzw. wieviele im Chat ist/sind?

Mein Code sieht im Moment so aus. Aber es will nicht so:

<?php
require_once './modules/Chat/src/pfcinfo.class.php';
require_once 
'./modules/Chat/settings.php';

$info  = new pfcInfomd5("Chat") );
$params["serverid"] = md5("Chat");
$params["serverid"] = md5($GLOBALS['sitename']);
// NULL is used to get all the connected users, but you can specify
// a channel name to get only the connected user on a specific channel
$users $info->getOnlineNick(NULL);
$chatcount count($users);
$info "";
if (
$chatcount  <= 1)
  
$info "<strong>%d</strong> User<br>sind im Chat!";
else
  
$info "<strong>%d</strong> User<br>sind im Chat!<hr>";
echo 
"<p>".sprintf($info$chatcount)."</p>";

$countercheck=1;
foreach(
$users_chat as $u){ 
if (
$countercheck==$nb_users_chat){
$u "<b>".$u." </b>";
}
else
{
$u "<b>".$u.", </b>";
$countercheck=$countercheck+1;
}
$z $z.$u;

$u $z;
if (
$nb_users_chat <= 0)
$u "None";

?>


Auf der Homepage habe ich auch schon das ganze Forum durchgearbeitet und probiert. Kann mir hier jemand helfen? Vielen Dank!
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

nudels64

Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

sardegna

hm... wir benutzen ZE-Chat. Da funzt das mehr oder weniger, mit dem Block....

vielleicht ist das ja ne Alternative...

nudels64

gibt es eine Bridge für Pragmamxb? Ich hab keine gefunden.
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

sardegna

nein, die gibts leider nicht...

Die Jungs von ZE-Chat haben den Anspruch den Chat selber zum CMS zu machen. Da fehlt meiner Menung nach aber noch ne Menge, zumindest im Vergleich zu PragmaMX. Der Chat selber ist aber jetzt schon der beste, den ich jemals gesehen hab, zumindest was kostenlose Scripts angeht. Kannst ihn Dir bei uns ja mal angucken, wir haben den an unser Pragma-Layout angepasst. http://webradio-smilie.de

nudels64

Dank Dir für den Tip, aber ich möchte schon den Chat behalten. Hat noch jemand einen Lösungsvorschlag?
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

nudels64

Hat einer von den Profis noch eine Idee wie ich das mit dem Block lösen kann? Wo liegt hier der Fehler?
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

das 'Echo' im Block muss raus !!
alle Ausgaben des Blockes müssen un der Variablen $content abgelegt werden. Der Inhalt dieser Variablen wird dann ausgegeben :)
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Danke für Deine Hilfe Olaf. Aber das ist für mich zu hoch. Das Echo habe ich entfernt. Weiter komme ich nicht.
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

statt dem 'echo' ein $content=   einsetzen
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Hab ich probiert. Es wird immer das angezeigt: "0 User sind im Chat"
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

der Block ist doch sehr unübersichtlich....
einges davon ist sowieso Müll..... soweit ich das sehe....

versuche mal folgendes :
tausche '$chatcount = count($users);' gegen '$chatcount = $users;' aus....

Ich habe das Modul selber nicht, kann es also selbst auch nicht ausprobieren.....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

ok, dann tuts mir leid, ich kenne das Modul nicht und somit bleibt dir nix anderes, als dich an den Ersteller des Moduls/Blocks  zu wenden....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Trotzdem Olaf. vielen Dank für Deine Hilfe.
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

nudels64

Hab es hinbekommen. Der Chat ist bei mir als Modul eingebunden.

Lösung:

Zuerst muß die Server-ID festgestellt werden. Das Verzeichnis liegt bei mir unter modules/Chat/data/privat/logs und sieht so aus: df2cdxxxxxe541498c27xxxxxxb5e232 (mit eigener ID ersetzen)

Dann folgenden Code in eine PHP Datei packen:

<?php
require_once './modules/Chat/src/pfcinfo.class.php';

// the next line you MUST EDIT FOR YOUR OWN SERVER ...........
$serverId "df2cdxxxxxe541498c27xxxxxxb5e232";


$chatinfo= new pfcInfo($serverId );
$users $chatinfo->getOnlineNick(NULL);

sort($users);
$nd_users count($users);
$info "";
if (
$nd_users==0) {
$content "Keiner im Chat";
} else {
echo 
"$nd_users Benutzer";
foreach(
$users as $u)
{
echo 
"<li>" .$u."</li>";
}}
echo 
"</ul>";
?>


Diese Datei unter /blocks abspeichern z.B. als "block-Who-is_im_Chat.php".

Block aktivieren.

Jetzt habe ich nur noch das Problem das mir die Listenanzeige im Firefox nach links rausrutscht. Vieleicht kannst Du mir da noch einmal unter die Arme greifen Olaf.  :gruebel:
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

gib mal ein Link zu der Seite, wo der Block eingebaut ist.....
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

nudels64

Oops war nicht für Gäste sichtbar. Jetzt sollte es gehen.
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

ok... erstmal Block so umschreiben ...

<?php

defined
('mxMainFileLoaded') or die('access denied');

require_once 
'./modules/Chat/src/pfcinfo.class.php';

// the next line you MUST EDIT FOR YOUR OWN SERVER ...........
$serverId "df2cdxxxxxe541498c27xxxxxxb5e232";


$chatinfo= new pfcInfo($serverId );
$users $chatinfo->getOnlineNick(NULL);

sort($users);
$nd_users count($users);

$content "";


if (
$nd_users==0) {
$content "Keiner im Chat";
} else {
$content .= "$nd_users Benutzer" "<ul class='list'>";

foreach(
$users as $u)
{
    
$content .= "<li>" .$u."</li>";
}  

$content .="</ul>";

}
?>



gegebenenfalls noch mal einen DIV-Block drumrum setzen
g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Wow, was für ne Änderung. Sehr schön. defined('mxMainFileLoaded') or die('access denied'); Auch ganz wichtig. Hab ich vergessen.
Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache

Olaf

g

Olaf

Kein Support über PN, Mail etc.!
Bitte die Fragen im Forum stellen, nur so helfen die Antworten auch den anderen Usern.
Bitte auch die Boardsuche nicht vergessen, oft ist genau dein Problem schon an anderer Stelle gelöst worden!

nudels64

Lieben Gruß
Andreas
#################################
CMS-Version:
pragmaMx 2.1.2.94 (2014-10-22)
PHP-Version:
5.6.24-he.0
MySQL-Version:
5.6.31-77.0-log
Server-Version:
Apache