Modul für Anzahl der Frontendbenutzer

Gesperrt
stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Modul für Anzahl der Frontendbenutzer

Beitrag von stefkey » So 13. Nov 2011, 22:37

Hallo zusammen,

kann mir jemand verraten wie ich die Anzahl der aktiven Frontendbenutzer in einem Artikel ausgeben kann?

Ich nehme mal an über ein kleines Modul, ich kann nur leider wenig bis kaum php um mir soetwas zu programmieren. Ich denke aber dass es eigentlich mit ein paar Zeilen Code zu machen ist. Vielleicht mit einer while-Schleife?!?
Oder gehts einfacher?

Oldperl
Beiträge: 4260
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Oldperl » Mo 14. Nov 2011, 07:39

Hallo stefkey,

Code: Alles auswählen

cInclude("classes", "class.frontend.users.php");
$iFEUserCountAll = 0;

$oFEUsers = new FrontendUserCollection();
if($oFEUsers->select("idclient='$client'")) {
    $iFEUserCountAll = (int) $oFEUsers->count();
}
 
Damit hast du dann die Anzahl aller FEUser für den aktuellen Mandanten in der Variablen $iFEUserCountAll.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von stefkey » Mo 14. Nov 2011, 22:58

Hallo Oldperl,

danke für den Ansatz. hmmm leider scheint ein kleiner Fehler drinn zu sein, es wird 0 ausgegeben.
Ich hab versucht den Fehler zu finden, aber hab wie gesagt keine Ahnung und komme nicht weiter.

Kannst du nochmal drüberschauen, oder jemand anderes ein Blick draufwerfen?

Vielen Dank!

Oldperl
Beiträge: 4260
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Oldperl » Di 15. Nov 2011, 10:04

Hallo stefkey,

funktioniert wie es soll bei mir, gerade nochmal in einem Demomandanten getestet.
Hast du überhaupt Frontenduser angelegt?
Welche Contenido Version?


Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Spider IT
Beiträge: 1416
Registriert: Fr 3. Dez 2004, 10:15

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Spider IT » Di 15. Nov 2011, 10:28

Hallo ihr beiden,

ich denke mal, dass hier ein Missverständnis vorliegt.
Gefragt wurde nach der "Anzahl der aktiven Frontendbenutzer", und genau das wird nicht ganz deutlich gewesen sein.
Als erstes fällt mir das Wort "aktiven" auf, also wohl die z.Z. angemeldeten?
Und dann kann es natürlich sein, dass es sich bei "Frontendbenutzer" nicht um Frontend-User, sondern um im Frontend angemeldeten Benutzer handelt, und das können auch Backend-User sein :)

Gruß
René

Oldperl
Beiträge: 4260
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Oldperl » Di 15. Nov 2011, 10:44

Hallo René,

stimmt was du sagst, es ist wirklich missverständlich. Also sollte man zuerst einmal klar definieren was mit
stefkey hat geschrieben:Anzahl der aktiven Frontendbenutzer in einem Artikel
genau gemeint ist. Dann kann man auch eine Lösung entwickeln.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von stefkey » Di 15. Nov 2011, 15:39

Hey,

zuerst mal danke dass ihr mir helfen könnt.

Ich meine tatsächlich Frontend User, also die User die sich mit dem Login-Modul einloggen und dann Zugriff auf geschützte Kategorien haben und diese geschützten Inhalte sehen können. Also nicht die Redaktuere welche sich im Backend einloggen um Inhalte zu editieren.

Und mir "aktiv" meine ich alle Frontenduser die einen aktivierten Account haben und nicht nur die User die gerade im Moment eingeloggt sind. Per Newsletteranmeldung können sich Useranmelden und erhalten eine Bestätigungsmail, wenn sie den Link in der E-Mail anklicken werden sie "aktiviert" und bekommen die automaitsch die Zugangsdaten für den geschützten Bereich per E-Mail zugesendet. Damit sind sie aktiv.

Ich habe Version 4.8.12

Mein Modul-Output sieht so aus:

Code: Alles auswählen

<?php

cInclude("classes", "class.frontend.users.php");
$iFEUserCountAll = 0;

$oFEUsers = new FrontendUserCollection();
if($oFEUsers->select("idclient='$client'")) {
    $iFEUserCountAll = (int) $oFEUsers->count();
}

echo "Das geschlossene Forum für Mitglieder zählt " . "$iFEUserCountAll" . " Teilnehmer.";

?>
Auf der Seite erscheint dann:
Das geschlossene Forum für Mitglieder zählt 0 Teilnehmer.

Es gibt nur einen Mandenten und aktuell 29 Frontend-User die Zugriff auf die geschützten Kategorien haben.

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Dodger77 » Di 15. Nov 2011, 16:10

Die Methode select() gibt in der 4.8.15 und vorher nichts zurück, die Abfrage kann also auch nicht wahr sein. Das hier funktioniert bei mir:

Code: Alles auswählen

<?php

cInclude("classes", "class.frontend.users.php");
$iFEUserCountAll = 0;

$oFEUsers = new FrontendUserCollection();
$oFEUsers->select("idclient = '" . $client . "' AND active = 1");
$iFEUserCountAll = (int) $oFEUsers->count();

printf(mi18n("Bisher haben wir %s angemeldete Mitglieder."),  $iFEUserCountAll);

?>

Oldperl
Beiträge: 4260
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Oldperl » Di 15. Nov 2011, 16:18

Hallo,

und für eine Anzeige von "aktiven" (freigeschalteten) FEUsern sollte das hier funktionieren

Code: Alles auswählen

<?php
// get active FEUsers
$iFEUserCountActive = 0;

$oFEUsers = new FrontendUserCollection();
$oFEUsers->setWhere('idclient', $client);
$oFEUsers->setInnerGroupCondition('valid_from', 'OR');
$oFEUsers->setWhereGroup('valid_from', 'valid_from', 'NOW()', '<=');
$oFEUsers->setWhereGroup('valid_from', 'valid_from', '0000-00-00', '=');
$oFEUsers->setInnerGroupCondition('valid_to', 'OR');
$oFEUsers->setWhereGroup('valid_to', 'valid_to', 'NOW()', '>=');
$oFEUsers->setWhereGroup('valid_to', 'valid_to', '0000-00-00', '=');
$oFEUsers->query();
$iFEUserCountActive = (int) $oFEUsers->count();

echo "Active FE-User: ".$iFEUserCountActive."<br/>";
?> 
Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

Dodger77
Beiträge: 3626
Registriert: Di 12. Okt 2004, 20:00
Wohnort: Voerde (Niederrhein)
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Dodger77 » Di 15. Nov 2011, 16:30

@Oldperl:

Das

Code: Alles auswählen

$oFEUsers->select("idclient = '" . $client . "' AND active = 1");
reicht dafür bereits.

Oldperl
Beiträge: 4260
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von Oldperl » Di 15. Nov 2011, 18:47

Dodger77 hat geschrieben:reicht dafür bereits.
Hmm ja, zumindest wie die momentane Funktionsweise ist.

Gruß aus Franken

Ortwin
ConLite 2.1, alternatives und stabiles Update von Contenido 4.8.x unter PHP 7.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog

stefkey
Beiträge: 556
Registriert: Mi 19. Okt 2005, 16:10
Wohnort: Heidelberg
Kontaktdaten:

Re: Modul für Anzahl der Frontendbenutzer

Beitrag von stefkey » Di 15. Nov 2011, 21:53

Hey danke!!! Es funktioniert, ich werde wohl die Tage das Update auf 4.8.15 machen und dann den Code von Oldperl nochmal nehmen. Danke an alle.

Nun würde ich eigentlich gerne die Zahl so darstellenn wie typischerweise auch Zähler dargestellt werden. Also in der wie zB die eBay Besucherzähler bei eBay-Auktionen. Hat zufällig jemand von euch eine Idee wie ich was finden kann?

Besten Dank und Grüße!

Gesperrt