Frontend User Log mit besuchten Seiten

HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Gut, aber bedenke, dass wenn die Kategorie gelöscht wird, Du nie wieder weisst, wo er (in Bezug auf die Kategorie) war.

Das obige Modul baust Du nun in jedes Template ein.

Dann fehlt nur noch die Ausgabe:

Code: Alles auswählen

<?php 
/* Output log */ 
cInclude("classes", "class.frontend.log.php"); 

$oLogs = new cFrontendLogCollection; 
$oLogs->setWhere("idfrontenduser", $auth->auth["uid"]);
$oLogs->setOrder("created DESC");
$oLogs->query();

while ($oLog = $oLogs->next()) {
   echo $oLog->get("title").":&nbsp;".$oLog->get("created")."<br />";
} 
?>
Das ist ein kurzes Beispiel, welches für den aktuell angemeldeten Nutzer die besuchten Seiten mit Zeit ausgeben sollte (ungetestet) - d.h. muss auf einer Seite sein, die nur nach Login zu erreichen ist.

Das Zeitformat kann man mit strftime (siehe http://www.php.net) anpassen. Andere oder alle Nutzer kann man auflisten, in dem man das setWhere entsprechend anpasst oder ganz weglässt.

Aufgrund der zu erwartenden Datenmenge sollte die Abfrage mit ->setLimit(<Anfang>, <Anzahl>) begrenzt werden (siehe Limit bei http://www.mysql.org) und ein Blättern implementiert werden. Auch die Ausgabe in einer Tabelle erscheint sinnvoll.

Da darfste Dich aber erstmal selbst dran versuchen, da helfe ich nur, wenn es ganr nicht mehr geht.

Viele Erfolg.

Gruß
HerrB
Zuletzt geändert von HerrB am Mo 3. Jul 2006, 14:45, insgesamt 1-mal geändert.
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
TV
Beiträge: 22
Registriert: Fr 30. Jun 2006, 08:42
Kontaktdaten:

Beitrag von TV »

Hallo,

also ich habe jetzt ein neues Modul "Auswertung" angelgt und den Code als Ausgabe eingefügt und da ich alle User angezeigt bekommen will die Zeile setWhere rausgenommen.
Das Modul in ein Template eingebaut und einem Artikel "Auswertung" zugewiesen.
Es wurde nur das Datum und die Uhrzeit angezeigt, hab dann mal ein bischen probiert und festgestellt dass anstatt "article" "title" rein muss.

Hier mein Code

Code: Alles auswählen

<?php 
/* Output log */ 
cInclude("classes", "class.frontend.log.php"); 

$oLogs = new cFrontendLogCollection;
$oLogs->setOrder("created DESC"); 
$oLogs->query(); 

while ($oLog = $oLogs->next()) { 
   echo $oLog->get("username").":&nbsp;".$oLog->get("title").":&nbsp;".$oLog->get("created")."<br />"; 
} 
?>
Es müssen also die Tabellennamen eingetragen werden.
Das Zeitformat kann man mit strftime (siehe http://www.php.net) anpassen. Andere oder alle Nutzer kann man auflisten, in dem man das setWhere entsprechend anpasst oder ganz weglässt.

Aufgrund der zu erwartenden Datenmenge sollte die Abfrage mit ->setLimit(<Anfang>, <Anzahl>) begrenzt werden (siehe Limit bei http://www.mysql.org) und ein Blättern implementiert werden. Auch die Ausgabe in einer Tabelle erscheint sinnvoll.

Da darfste Dich aber erstmal selbst dran versuchen, da helfe ich nur, wenn es ganr nicht mehr geht.
Ich werde mein bestes geben, mal schauen obs klappt.
Ich glaube es würde auch Sinn machen, wenn man einen Button einbaut, der die Tabelle löscht, bin gespannt ob ich das hin bekomme, bzw. ob das überhaut geht.

Gruß
Tobias
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Es müssen also die Tabellennamen eingetragen werden.
Yep, ich mache das gerade on the fly...
Ich glaube es würde auch Sinn machen, wenn man einen Button einbaut, der die Tabelle löscht, bin gespannt ob ich das hin bekomme, bzw. ob das überhaut geht.
Klar. Entweder direkt über einen SQL-Befehl oder:
<?php
/* Output log */
cInclude("classes", "class.frontend.log.php");

$oLogs = new cFrontendLogCollection;
$oLogs->setWhere("idfrontenduser", $auth->auth["uid"]);
$oLogs->query();

while ($oLog = $oLogs->next()) {
$oLogs->delete($oLog->get($oLog->primaryKey));
}
?>
Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
TV
Beiträge: 22
Registriert: Fr 30. Jun 2006, 08:42
Kontaktdaten:

Beitrag von TV »

Ich habe die Ausgabe in einer Tabelle stehen, mit Überschriften und unten einen Button "Daten Löschen" hinzugefügt. Diese Auswertung können nur Admins ansehen und löschen. Genau so hab ich mir das vorgestellt.

Vielen Dank HerrB für die Unterstützung! :)
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

Beitrag von HerrB »

Gern. Wenn Du da noch was zum Bättern bastelst/gebastelt hast, bitte hier posten, das nützt dann auch anderen.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
HerrB
Beiträge: 6935
Registriert: Do 22. Mai 2003, 12:44
Wohnort: Berlin
Kontaktdaten:

andryk

Beitrag von HerrB »

Per PM:
Andyk hat geschrieben:Hallo,

...
Habe alles nach Ihrer Anleitung gemacht.
Ich bekomme aber folgende Fehlermeldung:

Warning: D:\Programme\xampp\htdocs\Intranet\contenido\classes\class.genericdb.php 1438: Tried to load a single line with field idfrontendlog and value 1 from con_frontendlog but found more than one row in D:\Programme\xampp\htdocs\Intranet\contenido\includes\functions.general.php on line 1890

Woran liegt das ?

Danke schonmal im vorraus.

Gruß
Andy
1) Bitte immer im Forum posten
2) Vermutlich enthält die frontendlog-Tabelle mehr als einen Eintrag mit der gleichen idfrontendlog

Bitte mal den doppelten Eintrag rauslöschen (wenn möglich, alle) und dann nochmal versuchen.

Gruß
HerrB
Bitte keine unaufgeforderten PMs oder E-Mails -> use da Forum!

Newsletter: V4.4.x | V4.6.0-15 (Module, Backend) | V4.6.22+
Standardartikelliste: V4.4.x | V4.6.x
http://www.contenido.org/forum/search.php | http://faq.contenido.org | http://www.communido.net
Gesperrt