hallo,
ich habe ein problem bei meinem counter, welcher in einem fertigen für mich programmiertes cms included ist.
so sieht er aus:
und so wird er ausgegeben:
Und mein Problem ist, dass der Counter zwar funktioniert, aber die Gesamtanzeige nicht funktioniert. Jedoch weiss ich nicht genau woran es liegt. Liegt evtl. ein Fehler im Code vor? Habe gehört das bei PHP5 einige Änderungen im Code vorgenommen werden müssen.
Auf www.css-world.net sieht man wie es aktiv läuft. Rechts unten in der Navigation ist der Counter included.
ich habe ein problem bei meinem counter, welcher in einem fertigen für mich programmiertes cms included ist.
so sieht er aus:
PHP-Code:
<?php
// Updaten
// Select nach eigener Session-ID
$db->query(sprintf("SELECT * FROM %s WHERE ip = '%s'",
$cfg['tb'][29],
$_SERVER['REMOTE_ADDR']));
// Verfahren bei "Bekanntheit"
if ($db->num_rows())
{
// Einträge updaten
$id = $db->f("id");
$db->query(sprintf("UPDATE %s SET date = NOW() WHERE id = '%d'",
$cfg['tb'][28],
$id));
$db->query(sprintf("UPDATE %s SET date = NOW() WHERE id = '%d'",
$cfg['tb'][29],
$id));
}
else
{
# Einträge erstellen
$db->query(sprintf("INSERT INTO %s (date) VALUES (NOW())",
$cfg['tb'][28]));
$db->query(sprintf("INSERT INTO %s (ip, date) VALUES ('%s', NOW())",
$cfg['tb'][29],
$_SERVER['REMOTE_ADDR']));
$db->query(sprintf("UPDATE %s SET value = value+1 WHERE stat = '%s'",
$cfg['tb'][30],
"overall"));
}
// Löschen von Einträgen von letzter Woche
if (date("D") == "Mon")
{
$db->query(sprintf("DELETE FROM %s WHERE date < '%s'",
$cfg['tb'][28],
date("Y-m-d")));
}
// Löschen von Einträgen mehr als 10 min Alter (Session)
$db->query(sprintf("DELETE FROM %s WHERE date < '%s'",
$cfg['tb'][29],
date("Y-m-d H:i:s", mktime(date("H"), date("i")-10, date("s"), date("m"), date("d"), date("Y")))));
// Statistiken auslesen
$db->query(sprintf("SELECT * FROM %s WHERE date = '%s'",
$cfg['tb'][28],
date("Y-m-d")));
$stat['today'] = $db->num_rows();
$db->query(sprintf("SELECT * FROM %s",
$cfg['tb'][28]));
$stat['week'] = $db->num_rows();
$db->query(sprintf("SELECT * FROM %s",
$cfg['tb'][29]));
$stat['online'] = $db->num_rows();
$db->query(sprintf("SELECT * FROM %s WHERE stat = '%s'",
$cfg['tb'][30],
"overall"));
$db->next_record();
$stat['overall'] = $db->f("value");
// Ausgabe
$tpl->set_var(array(
"st|online" => $stat['online'],
"st|overall" => $stat['overall'],
"st|today" => $stat['today'],
"st|week" => $stat['week']
));
$tpl->pparse("out", "stats");
?>
PHP-Code:
<table>
<tr>
<td width="50">
Heute:
</td>
<td>
{st|today}
</td>
</tr>
<tr>
<td>
Woche:
</td>
<td>
{st|week}
</td>
</tr>
<tr>
<td>
Online:
</td>
<td>
{st|online}
</td>
</tr>
<tr>
<td colspan="2">
 
</td>
</tr>
<tr>
<td>
Gesamt:
</td>
<td>
{st|overall}
</td>
</tr>
</table>
Auf www.css-world.net sieht man wie es aktiv läuft. Rechts unten in der Navigation ist der Counter included.
Kommentar