Zaehler für dynamische Seiten

emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

okay

aktueller monat komplett in der aktuellen sprache:

Code: Alles auswählen

<?php 
// aktuelles monat gesamt in aktueller sprache
$sql = 'SELECT 
            sum(B.visited) as visited 
        FROM 
            '.$cfg['tab']['stat'].' as B
        WHERE 
            B.idlang = '.$lang; 

$db->query($sql); 

if ($db->next_record()) { 
    echo "Aktuelles Monat komplett: ".$db->f('visited'); 
} 

?>
letztes monat komplett in aktueller sprache:

Code: Alles auswählen

<?php    
// letztes monat gesamt in aktueller sprache
    $year = date("Y"); 
    $month = date("m"); 

    if ($month == 1) 
    { 
       $month = 12; 
       $year = $year -1; 
    } else { 
       $month = $month -1; 
    } 

    $yearmonth = sprintf("%04d%02d",$year,$month); 
    
    $sql='SELECT 
            sum(C.visited) AS archived 
        FROM 
            '.$cfg['tab']['stat_archive'].' AS C 
        WHERE 
            C.idlang = '.$lang.' AND 
            C.archived = '.$yearmonth; 
            
    $db->query($sql); 

    if ($db->next_record()) { 
         echo 'Letztes Monat komplett: '.$db->f('archived'); 
    } 
?>
alle hits in aktueller sprache:

Code: Alles auswählen

<?php 
// gesamt in aktueller sprache
$sql = 'SELECT 
            sum(B.visited) as visited 
        FROM 
            '.$cfg['tab']['stat'].' AS B
        WHERE 
            B.idlang = '.$lang; 

$db->query($sql); 

if ($db->next_record()) { 
   $hits = $db->f('visited'); 
} 

    $sql='SELECT 
            sum(C.visited) AS archived 
        FROM 
            '.$cfg['tab']['stat_archive'].' AS C 
        WHERE 
            C.idlang = '.$lang; 
            
    $db->query($sql); 

    if ($db->next_record()) { 
         $hits = $hits + $db->f('archived'); 
    } 

echo "Insgesamte Hits: ".$hits;

?>
ist ganz auf die schnelle, sollte laufen...

wenn du das ganze vielleicht in ein nettes modul zusammenfassen könntest, wäre es sicher ganz brauchbar...
Zuletzt geändert von emergence am Di 23. Mär 2004, 10:49, insgesamt 1-mal geändert.
maTTos
Beiträge: 130
Registriert: Fr 27. Jun 2003, 14:14
Kontaktdaten:

Beitrag von maTTos »

emergence, Du bist echt der Knaller. Thx! :D

Aktueller monat komplett in der aktuellen sprache: einwandfrei
Letzter Monat komplett in aktueller sprache: Zähler steht auf 0 (ist klar, da ich das System erst vor ein paar Tagen aufgesetzt habe)
Alle Hits in aktueller sprache: Zähler steht auf 0 (Das wundert mich allerdings).

Hast Du eine Idee :idea:

http://www.betaweb.de/myfdb/cms/start.htm
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

maTTos hat geschrieben:Alle Hits in aktueller sprache: Zähler steht auf 0 (Das wundert mich allerdings).
zum testen hatte ich keine zeit, hab ich jetzt korrigiert sollte nun klappen...
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer Seitenzähler

Beitrag von kuchi »

Hallo,

eigentlich habe ich z.B. mit jsp keine Probleme; aber wenn ich mit php in Berührung komme und versuche HTML und php zu vereinen, gibt es da so ein Problem, z.B.:

Ich möchte eine Tabelle in das Modul einbinden oder besser umgekehrt.

Code: Alles auswählen

<?php
// aktuelles monat gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].' as B
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
    echo "

_____________________________________________________________
    <table>
           <tr><td>
    
   <font size=\"1\">aktueller&nbsp;&nbsp;Monat:&nbsp;&nbsp;".$db->f('visited');
   echo "</td></tr>";
}
// letzter monat gesamt
    $year = date("Y");
    $month = date("m");

    if ($month == 1)
    {
       $month = 12;
       $year = $year -1;
    } else {
       $month = $month -1;
    }

    $yearmonth = sprintf("%04d%02d",$year,$month);

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang.' AND
            C.archived = '.$yearmonth;

    $db->query($sql);

    if ($db->next_record()) {
         echo "<tr><td><br>letzter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Monat:".$db->f('archived');
         echo "</td></tr>
    }
// gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].'
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
   $hits = $db->f('visited');
}

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang;

    $db->query($sql);

    if ($db->next_record()) {
         $hits = $hits + $db->f('archived');
    }

echo "<tr><td>seit August_03&nbsp;&nbsp;&nbsp;:&nbsp;$hits</font>; "
echo "</td></td></table>";

_____________________________________________________________

?>

aber es wird immer ein Fehler angezeigt/ irgendwo muß da ein Zeichen falsch gesetzt sein?


Gruß kuchi
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

echo "<tr><td>seit August_03&nbsp;&nbsp;&nbsp;:&nbsp;$hits</font>";

strichpunkt nicht vergessen... bzw am ende des quotes... nicht davor..
*** make your own tools (wishlist :: thx)
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer Seitenzähler

Beitrag von kuchi »

Hi emergence,

das war es noch nicht; bei dieser Variante kann ich nichts entdecken.

Code: Alles auswählen

<?php
// aktuelles monat gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].' as B
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
    echo "
    <table>
           <tr><td>
    
   <font size=\"1\">aktueller&nbsp;&nbsp;Monat:&nbsp;&nbsp;".$db->f('visited');
   echo "</td></tr>";
}
// letzter monat gesamt
    $year = date("Y");
    $month = date("m");

    if ($month == 1)
    {
       $month = 12;
       $year = $year -1;
    } else {
       $month = $month -1;
    }

    $yearmonth = sprintf("%04d%02d",$year,$month);

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang.' AND
            C.archived = '.$yearmonth;

    $db->query($sql);

    if ($db->next_record()) {
         echo "<tr><td><br>letzter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Monat:".$db->f('archived');
         echo "</td></tr>
    }
// gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].'
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
   $hits = $db->f('visited');
}

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang;

    $db->query($sql);

    if ($db->next_record()) {
         $hits = $hits + $db->f('archived');
    }

echo "<tr><td>seit August_03&nbsp;&nbsp;&nbsp;:&nbsp;$hits ";
echo "</font>";
echo "</td></td></table>";


?>

Gruß kuchi
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

bitte ins errorlog schauen...
die fehlerangabe bezieht sich immer auf die zeile +- 2

Code: Alles auswählen

         echo "</td></tr>
ersetzen durch

Code: Alles auswählen

         echo "</td></tr>";
*** make your own tools (wishlist :: thx)
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer Seitenzähler

Beitrag von kuchi »

Hallo emergence,

abgeändert; keine Lösung...

Code: Alles auswählen

<?php
// aktuelles monat gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].' as B
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
    echo "
    <table>
           <tr><td>

   <font size=\"1\">aktueller&nbsp;&nbsp;Monat:&nbsp;&nbsp;".$db->f('visited');
   echo "</td></tr>";
}
// letzter monat gesamt
    $year = date("Y");
    $month = date("m");

    if ($month == 1)
    {
       $month = 12;
       $year = $year -1;
    } else {
       $month = $month -1;
    }

    $yearmonth = sprintf("%04d%02d",$year,$month);

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang.' AND
            C.archived = '.$yearmonth;

    $db->query($sql);

    if ($db->next_record()) {
         echo "<tr><td><br>letzter&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Monat:".$db->f('archived');
         echo "</td></tr>"
    }
// gesamt in aktueller sprache
$sql = 'SELECT
            sum(visited) as visited
        FROM
            '.$cfg['tab']['stat'].'
        WHERE
            B.idlang = '.$lang;

$db->query($sql);

if ($db->next_record()) {
   $hits = $db->f('visited');
}

    $sql='SELECT
            sum(C.visited) AS archived
        FROM
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE
            C.idlang = '.$lang;

    $db->query($sql);

    if ($db->next_record()) {
         $hits = $hits + $db->f('archived');
    }

echo "<tr><td>seit August_03&nbsp;&nbsp;&nbsp;:&nbsp; $hits ";
echo "</font>";
echo "</td></td></table>";


?>

kann dummerweise den Fehler nicht finden.

Gruß kuchi
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

bidde ergänz den strichtpunkt -> ; bei deiner letzen änderung

wenn du ein modul schreibst und du hast einen fehler drinnen hast du dann dort ne rote lampe...
wenn du die maus drüberbewegst bekommst du die info wo der fehler zu suchen ist...
ansonsten ins errorlog schauen...
*** make your own tools (wishlist :: thx)
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer Seitenzähler

Beitrag von kuchi »

Hallo emergence,

errorlog sieht so aus:

Code: Alles auswählen

[25-Mar-2004 16:59:43] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 16:59:43] next_record called with no query pending.
[25-Mar-2004 16:59:53] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 16:59:53] next_record called with no query pending.
[25-Mar-2004 17:00:18] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 17:00:18] next_record called with no query pending.
[25-Mar-2004 17:00:56] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 17:00:56] next_record called with no query pending.
[25-Mar-2004 17:01:07] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 17:01:07] next_record called with no query pending.
[25-Mar-2004 17:01:28] Invalid SQL: SELECT 
            sum(visited) as visited 
        FROM 
            con_stat 
        WHERE 
            B.idlang = 1<br><br>
[25-Mar-2004 17:01:28] next_record called with no query pending.
die Tabellendarstellung haut jetzt hin aber die Seiten werden dermaßen langsam aufgebaut (gestern noch super schnell) das Problem hatte ich noch nie.

Gruß kuchi
emergence
Beiträge: 10653
Registriert: Mo 28. Jul 2003, 12:49
Wohnort: Austria
Kontaktdaten:

Beitrag von emergence »

vielleicht solltest du das richtige query verwenden...

Code: Alles auswählen

// gesamt in aktueller sprache 
$sql = 'SELECT 
            sum(visited) as visited 
        FROM 
            '.$cfg['tab']['stat'].' AS B
        WHERE 
            B.idlang = '.$lang;
*** make your own tools (wishlist :: thx)
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer Seitenzähler

Beitrag von kuchi »

Danke :o emergence!

übrigens machte das RSS News Feed Javascript die Probleme mit dem langsamen Bildaufbau (erstmals, bisher machte es keine Probleme)

Gruß kuchi
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

dynamischer SeitenzähleR

Beitrag von kuchi »

Hallo,

Jetzt habe ich den neuen Monat und es wird bei aktueller Monat und letzter Monat nichts mehr angezeigt.
Was kann denn da die Ursache sein?

Gruß kuchi

www.lidahilfe.de
Halchteranerin
Beiträge: 5478
Registriert: Di 2. Mär 2004, 21:11
Wohnort: Halchter, wo sonst? ;-)
Kontaktdaten:

Re: dynamischer SeitenzähleR

Beitrag von Halchteranerin »

Hallo kuchi,

liegt das irgendwie an der zweisprachigen Version? Ich habe mir aus den verschiedenen Codes hier in diesem Thread etwas gebastelt, aber ich glaube, ich habe nicht die Version genommen, die die Sprachversion auch beruecksichtigt (wenn Du moechtest, kann ich 'mein' Modul hier posten), und bei mir funktioniert's.

Gruss
Christa
kuchi
Beiträge: 222
Registriert: So 29. Jun 2003, 18:02
Wohnort: Neubrandenburg
Kontaktdaten:

Dynamischer Seitenzähler

Beitrag von kuchi »

Hallo Christa :) ,


das wäre sehr nett von Dir, wenn Du mir das Modul posten würdest!

Gruß kuchi
Gesperrt