Seite 2 von 6

dynamischer Seitenzähler

Verfasst: Mi 10. Mär 2004, 14:18
von kuchi
Hallo emergence,

bei mir wird die Zahl visited nicht angezeigt; was kann ich da noch unternehmen?

Gruß kuchi

Verfasst: Mi 10. Mär 2004, 14:31
von emergence
poste nochmal deinen entsprechenden code...
ich teste es mal bei mir...

dynamischer Seitenzähler

Verfasst: Mi 10. Mär 2004, 15:06
von kuchi
Hallo emergence!

Hier ist der code:

Code: Alles auswählen

<? 
$sql = 'SELECT sum(B.visited+C.visited) AS visited 
FROM con_cat_art AS A, con_stat AS B, con_stat_archive AS C 
WHERE A.idcatart = B.idcatart AND A.idcatart = C.idcatart 
LIMIT 1';
 
$db->query($sql); 
if ($db->next_record()) 
  echo '<br><table border=\"0\"cellpadding=\"0\" cellspacing=\"0\"><tr><td style=\"font-family:arial,geneva,sans-serif;font-size:0.7em;\">Aufrufe <u>dieser</u>
Seite:&nbsp;'.$db->f('visited').'&nbsp;&nbsp;seit 27.02.04.</td></tr></table>'; 

?> 
Gruß kuchi

Verfasst: Mi 10. Mär 2004, 16:13
von emergence
dein code funktioniert bei mir ?? , jedoch hab ich mir das sql query nicht genauer angesehen... ist leider ein fehler drinnen
-> sum addiert alle werte einer spalte, ein limit 1 hilft dabei leider nichts
die resultierende summe der treffer war bei mir immer 3 mal so hoch...

folgendes funktioniert bei mir:

Code: Alles auswählen

<? 
if ( !is_object($db) ) {
        $db = new DB_Contenido;
}

$sql = 'SELECT 
            B.visited,
            sum(C.visited) AS archived
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat'].' AS B,
            '.$cfg['tab']['stat_archive'].' AS C
        WHERE 
            A.idcatart = B.idcatart AND
            A.idcatart = C.idcatart AND
            C.idcatart = '.$idcatart.'
        GROUP BY B.visited';

$db->query($sql); 
if ($db->next_record()) {
  $hits = $db->f('visited') + $db->f('archived');
  echo '<b>Diese Seite wurde schon '.$hits.' mal aufgerufen.</b>';
} 

?>
ein anpassen an die eigenen bedürfnisse dürfte kein problem sein...
in deinem fall die zeile:

Code: Alles auswählen

  echo '<b>Diese Seite wurde schon '.$hits.' mal aufgerufen.</b>';
durch

Code: Alles auswählen

  echo '<br><table border=\"0\"cellpadding=\"0\" cellspacing=\"0\"><tr><td style=\"font-family:arial,geneva,sans-serif;font-size:0.7em;\">Aufrufe <u>dieser</u> 
Seite:&nbsp;'.$hits.'&nbsp;&nbsp;seit 27.02.04.</td></tr></table>';
ersetzen...

dynamischer Seitenzähler

Verfasst: Do 11. Mär 2004, 15:13
von kuchi
Hallo emergence!

Die Anzahl wird nicht angezeigt. Kann ehrlich gesagt nicht erkennen woran es liegt.

Gruß kuchi

Verfasst: Do 11. Mär 2004, 16:34
von emergence
warum es bei dir nicht läuft ? keine ahnung...
sollte eigentlich laufen...

dynamischer Seitenzähler

Verfasst: Do 11. Mär 2004, 18:03
von kuchi
Hallo nochmal,

hier ist nochmals der Code; vielleicht stimmt ja doch was nicht.

Code: Alles auswählen

<? 

$sql = 'SELECT 
            B.visited, 
            sum(C.visited) AS archived 
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat'].' AS B, 
            '.$cfg['tab']['stat_archive'].' AS C 
        WHERE 
            A.idcatart = B.idcatart AND 
            A.idcatart = C.idcatart AND 
            C.idcatart = '.$idcatart.' 
        GROUP BY B.visited'; 

 
$db->query($sql);
if ($db->next_record()) 
$hits = $db->f('visited') + $db->f('archived');
  echo '<br><table border=\"0\"cellpadding=\"0\" cellspacing=\"0\">
  <tr><td style=\"font-family:arial,geneva,sans-serif;font-size:0.7em;\">Aufrufe <u>dieser</u>
Seite:&nbsp; '.$hits.' &nbsp;&nbsp;seit 27.02.04.</td></tr></table>';

?>
Da muß doch was zu machen sein.

Gruß kuchi

Verfasst: Do 11. Mär 2004, 19:05
von emergence
der code läuft bei mir...
-> Aufrufe dieser Seite: 3 seit 27.02.04.

dynamischer Seitenzähler

Verfasst: Fr 12. Mär 2004, 08:29
von kuchi
Hallo emergence!

Das ist ja zum Piepen.

Gruß kuchi

Verfasst: Fr 12. Mär 2004, 12:11
von emergence
hmm...
schreib mal direkt nach dem sql query

echo $sql."<br><br>";

hin...

und stelle diesen code mal hier ins forum...

dynamischer Seitenzähler

Verfasst: Fr 12. Mär 2004, 12:32
von kuchi
Hallo emergence,

Code: Alles auswählen

<? 

$sql = 'SELECT 
            B.visited, 
            sum(C.visited) AS archived 
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat'].' AS B, 
            '.$cfg['tab']['stat_archive'].' AS C 
        WHERE 
            A.idcatart = B.idcatart AND 
            A.idcatart = C.idcatart AND 
            C.idcatart = '.$idcatart.' 
        GROUP BY B.visited'; 
echo $sql."<br><br>"; 
 
$db->query($sql);
if ($db->next_record()) {
$hits = $db->f('visited') + $db->f('archived');}
  echo '&nbsp; '.$hits.' &nbsp;';

?>
kuchi

Verfasst: Fr 12. Mär 2004, 12:38
von emergence
nein ich meinte ich will die ausgabe auf deiner webseite sehen...
diese änderung schreibt dir dann das auszuführende sql query auf den bildschirm...

Verfasst: Fr 12. Mär 2004, 12:48
von emergence
ähm ich glaub ich habs gefunden:

Code: Alles auswählen

<? 

$sql = 'SELECT 
            B.visited 
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat'].' AS B 
        WHERE 
            A.idcatart = B.idcatart AND 
            A.idcatart = '.$idcatart;
$db->query($sql); 

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

$sql = 'SELECT 
            sum(C.visited) AS archived 
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat_archive'].' AS C 
        WHERE 
            A.idcatart = C.idcatart AND 
            C.idcatart = '.$idcatart; 
$db->query($sql); 

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

echo '<b>Diese Seite wurde schon '.$hits.' mal aufgerufen.</b>';

?>

dynamischer Seitenzähler

Verfasst: Fr 12. Mär 2004, 13:55
von kuchi
Hallo emergence,

leider immer noch Fehlanzeige, es ist schon komisch.
Vor allen Dingen, daß überhauptnichts - außer dem Text - angezeigt wird.



Gruß kuchi

Verfasst: Fr 12. Mär 2004, 14:09
von emergence
versuchs mal nur diesen teil:

Code: Alles auswählen

<? 

$sql = 'SELECT 
            B.visited 
        FROM 
            '.$cfg['tab']['cat_art'].' AS A, 
            '.$cfg['tab']['stat'].' AS B 
        WHERE 
            A.idcatart = B.idcatart AND 
            A.idcatart = '.$idcatart; 
$db->query($sql); 

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

echo '<b>Diese Seite wurde schon '.$hits.' mal aufgerufen.</b>'; 

echo $sql;

?>