amiga-news ENGLISH VERSION
.
Links| Forum| Kommentare| News melden
.
Chat| Umfragen| Newsticker| Archiv
.

amiga-news.de Forum > Programmierung > Suche CGI-Counter mit Reloadsperre und ohne SSI ! [ - Suche - Neue Beiträge - Registrieren - Login - ]

-1- [ - Beitrag schreiben - ]

10.08.2004, 14:12 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hallo Zusammen,


Ich zerbreche mir schon seit einer ganzen Weileden Kopf, wie ich das mit dem Counter auf meiner neuen Seite anstellen soll.

Der Counter soll im Header eingebunden werden. Der Header wird dann per include (php) zusammen mit weiteren Teilen vom Server zum eigentlichen Dokument zusammengefügt.

Hierbei entsteht das Problem, daß die Quelle immer da ist, wo sich die index.php befindet.
Ein PHP-Counter scheidet hier also von vornherein aus.

SSI kann man ebenfalls vergessen, da das Endprodukt immer PHP ist, auch wenn der Header als shtml vorliegen würde.

Es bleibt also ein CGI-Counter, der ohne SSI funktionieren soll.

Ich habe jetzt schon einen Counter erfolgreich installieren können, doch dieser zählt jeden Zugriff, was ja witzlos ist.
Eine Reloadsperre fehlte diesem einfach counter leider.

Jetzt habe ich schon unmengen an Counter ausrprobiert, doch keiner wollte so, wie es sein sollte.

Hat vielleicht Jemand von euch eine Ahnung, wie ich das lösen könnte?

PHP macht ja wie schon gesagt Probleme. Die Dinger funzen immer nur auf der ersten Seite. Sobald ich aber eine weitere Seite (die aus einem Unterverzeichnis kommt) aufrufe, wird der Zugriff verweigert.

Wie schon erwähnt ist das bei CGI nicht der Fall, weil ich da ja den absoluten Pfad angebe und der sich nicht ändert.

Ich hoffe, daß das irgendwie verständlich rübergekommen ist.


Danke schon mal im voraus.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 15:03 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
Leider arbeitet Deine mit mehreren Frames, da ist da nicht so ideal. Vielleicht den Counter einfach nicht im Menu sondern im Hauptteil einbetten. Dann muß er ja jede Seite zählen. Ich selbst hatte 2 PHP Counter genutzt, einmal als txt und einmal mit MySQL Anbindung. Mittlerweile verwende ich jedoch externe Service, mit umfangreichen Statistiken.
--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 18:34 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi Djbase,


Meine Seite hat keine Frames !
Ich arbeite hier lediglich mit PHP_Includes.

Das Problem hierbei ist eben, daß nicht wie bei einer simplen Frameseite
immer auf einer Seite der Counter sitzt, sondern auf vielen verschiedenen Seiten.
Der Counter sitzt zwar immer in der selben header.php, doch die Quelle ist dann eben anders. Das Script wird dann immer da ausgeführt, wo die Includes eingebettet werden und nicht an der Stelle, wo sich die Includes befinden.

PHP scheidet aus diesem Grund komplett aus.

CGI ist eben wie schon erwähnt deshalb ein Problem, weil es keine gescheiten Counter ohne SSI gibt.
SSI muß aber in der Regel in einer shtml stehen.
Ich könnte zuwar ein header.shtml machen, doch am Ende, wenn die Seite vom Server zusammengebaut ist, wird aus dem ganzen Dokument wieder eine index.php.

Was meinste denn für externe Services?
Mir reicht eigentlich ein einfacher Counter, der meinen Besucherstand von Amiforce in gleicher Weise wie bisher fortführt.

Dazu muß eben eine Reloadsperre mit drin sein.
Das andere Script, daß ich ausprobiert hatte, zählte leider bei jedem Klick auf jede Seite weiter.

Was könnte man denn für Services nutzen?

Danke schonmal im voraus.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 20:22 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
Also ich finde den Seitenaufbau schon sehr seltsam. Aber dennoch, Deine Seite (http://www.cj-stroker.de/Abakus/) besitzt insgesamt 3 Frames: Titel, Navigation und Main. Das sind 3 eigenständige HTML Seiten und bitte nichts anderes erzählen. Mag sein das diese Seiten auch wiederum via Include() zusammengebaut werden.

Irgendwie verstehe ich Dein Problem sowieso nicht. Mag am Wetter liegen.
--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 21:38 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi DjBase,


Ich rede nicht von Abakus-Design, sondern von meinem komplett neuen Amiforce !

Ich weis schon wovon ich rede. Von der Abakus-Seite war nie die Rede.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 22:28 Uhr

David
Posts: 65
Nutzer
vieleicht sind Session eine Lösung.
http://de.php.net/manual/de/ref.session.php


oder den Counter nur hochzählen, wenn z.B. nur die index.php
aufgerufen wird.


--
mfg
David
http://www.david-mevius.de

[ - Antworten - Zitieren - Direktlink - ]

10.08.2004, 23:44 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
Zitat:
Original von Cj-Stroker:
Hi DjBase,


Ich rede nicht von Abakus-Design, sondern von meinem komplett neuen Amiforce !

Ich weis schon wovon ich rede. Von der Abakus-Seite war nie die Rede.



Schön das wir das jetzt auch mal wissen. Da sie nicht öffentlich ist, kann ich dazu auch nicht weiterhelfen.


--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite

[ - Antworten - Zitieren - Direktlink - ]

11.08.2004, 12:35 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi David,


Wenn ich PHP-Programmierer wäre, dann könnte man bestimmt irgendwas basteln.
Womöglich wäre von anfang an auch einiges anders gemacht worden.

Das mit dem Counter auf der Index.php nutzt leider nichts.
Ich habe die Seite deshalb so aufgebaut, daß selbst bei einem direktlink, die Seite komplett aufgebaut wird.

Das Problem ist eben die Header.php, die in jeder Seite eingebunden wird. Sie ist nur einmal vorhanden.

@DjBase

Da die Seite noch nicht fertig ist, habe ich sie auch nicht öffentlich gemacht. Ich will sie erst an den Start schicken, wenn sie soweit ist, daß ich das alte Amiforce in Rente schicken kann.

Sobald ich nämlich z.B. das News-Script einbinde, geht das auf der alten Seite nicht mehr. Das wird komplett eingebettet.

Das Prinzip ist aber ganz simpel (wenn es dich noch interessiert):

Es gibt folgende Elemente: header.php, nav.php, footer.php. Diese existieren nur einmal und befinden sich im Hauptverzeichnis.
Sie werden vom jeweilgen Dokument einfach per PHP_Include eingebunden.

Es gibt noch zwei weitere includes: firstheader.php und subtitle.php.
Von diesen existiert aber für jede Seite eine Version.
Die beiden dienen dazu, die Seite mit einer Nav-history auszustatten und
um den Suchmaschinen ein bischen was zum Futtern bereitzustellen.

Diese beiden sind aber absolut uninteressant für die Zwecke.

Es bleiben also nur die feststehenden Sachen, wie header, footer und nav.

Ich brächte jetzt nur einen Counter, der sich eine IP für eine gewisse Zeit merkt und erst danach wieder weiterzählt.

Das sollte dann aber für alle Seiten gelten. Es sollte also egal sein, ob ich jetzt den index besuche oder die Sektion Amiblitz.

Das ist eine Sache, die dieser einfache Counter, den ich da probiert hatte vorzüglich machte. Leider zählte er aber jeden Klick.
Wenn eine Reloadsperre drin wäre, dann wäre dieser Counter perfekt gewesen.
Leider hat das einbauen einer Reloadsperre eines anderen Counters nicht funktioniert. Sämtliche Variablen sind anders und wer sich CGI-Scripte (Perl) mal angesehen hat, der weis, daß sowas für einen nicht Programmierer ziemlich kryptisch aussieht.

Bei meinem kleinen Webspace ist ein Basis-CGI dabei. Dieser Counter funktioniert auf jeder beliebigen Seite meines Webspaces.
Er überprüft dabei immer nur, ob die Quelle (Referer) der andordernden Seite stimmt. Ich bin überzeugt, daß dieses Scipt in der neuen Seite genauso seinen Dienst verrichten würde.

Leider ist es aber ein anderer Webspace incl. eigener Domain.
Das Einbinden ist hier nicht möglich.

An diesem Counter sehe ich aber, daß es möglich sein muß.
Er wird ganz normal per img_tag eingebunden. Also ist es auch kein SSI-Counter.

Nur wie heist dieses Script und wo bekommt man sowas her???

Ich weis nicht, ob ich das mit dem erklären so richtig hinbekomme, daß man mich auch versteht.

Trotzdem danke.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

11.08.2004, 12:38 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Um es nochmal vereinfacht zu sagen:

der Counter soll eben für die ganze Seite funktionen und nicht nur für den Index (Startseite).

MFG

Cj-Stroker


[ Dieser Beitrag wurde von Cj-Stroker am 11.08.2004 editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

11.08.2004, 13:47 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
Mit include() arbeiten ja auch alle meine Seiten, das Prinzip verstehe ich ja. Allerdings verstehe ich Dein Problem irgendwie nicht so recht. Wenn ich z.b. im header oder footer den Counter einbinde, so wird er bei jeder Seite mitgeladen, da sie überall eingebunden wird. Ok. Jetzt soll dieser Counter auch für Unterseiten genutzt werden. Normalerweise sehe ich da kein Problem, wenn er dort genauso eingesetzt wird. Man muß nur den absoluten Pfad angeben. Bei Verwendung eines Counters mit MySQL Anbindung ist das noch einfacher. Dann wird immer auf die gleiche Tabelle zurückgegriffen, egal welche Domain/Seite es jetzt ist.
--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite


[ Dieser Beitrag wurde von DJBase am 11.08.2004 editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

11.08.2004, 15:28 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi DjBase,


Ja, genau so meinte ich das. PHP_include ist ja nix besonderes. Nutzt ja eigentlich jeder. Ich habe da immer Probleme was zu erklären.

Habe mir grad mal ein paar PHP-Counter angesehen.
Ich glaube über Mysql müßte es wirklich problemlos funktionieren.

Ich habe wohl zu schnell auf CGI umgeschwenkt und PHP ganz vernachlässigt.
Wenn der Counter nämlich auf die Datenbank zugreift, dann entfallen die ganzen Probleme, die ich bislang hatte.

Wieso ich nicht vorher auf einen Counter mit Mysql-Anbindung gekommen bin ?(

Das werde ich mal ausprobieren.

thx für das zurechtrücken der entsprechenden Hirnregionen. ;)

P.S.: Irgendein Counter, den du empfehlen kannst?
Es gibt ja sehr viele. So langsam habe ich von der ewigen (unnötigen) Probiererei die Nase voll.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

11.08.2004, 16:23 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
http://www.php-resource.net/





--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite

[ - Antworten - Zitieren - Direktlink - ]

12.08.2004, 12:31 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi DjBase,


Danke für deine Hilfe !

Ohne dich würde ich immer noch in Richtung Perl schielen, obwohl das gute so nah liegt. ;)

Habe jetzt ein Counterscript eingesetzt, das ich schon auf meiner Platte rumliegen hatte.

Es bietet genau das, was ich wollte.
Zuvor hatte ich es gleich wieder links liegen gelassen, weil die Seite ausgebremst wurde. Habe jetzt aber eine Lösung gefunden und es geht jetzt perfekt.


Was hast du eigentlich so für Einstellungen für die Reload-Sperre?

Haste das auch auf 10 Minuten stehen?


Nochmals danke.


MFG

Cj-Stroker

--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

12.08.2004, 13:49 Uhr

DJBase
Posts: 3354
[Ex-Mitglied]
10 Minuten sind vielleicht etwas viel. Denke 3 Minuten ist ein gutes Maß.
--
Meine Internet-Projekte :: Meine Amiga-Seite :: Meine Pegasos-Seite

[ - Antworten - Zitieren - Direktlink - ]

12.08.2004, 16:21 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi DjBase,

Jo, habe so etwas über 3 Minuten eingestellt und es funzt tadellos.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

13.08.2004, 09:39 Uhr

bruZard
Posts: 307
Nutzer
ganz einfach ein PHP Script nehmen, vor jeglicher Header Ausgabe session_start() ausführen, mit $_SESSION['gezaehlt']==1 festlegen dass der User gezählt wurde und vor dem Eintrag in den Counter gucken ob $_SESSION['gezaehlt'] auf 0 steht. Der User wird solange nicht erneut gezählt bis er die Seite verlässt und wieder drauf geht. Auch ein ReLoad wird nicht mitgezählt.

[code]
<?php
session_start();
if(!isset($_SESSION['gezaehlt']))
{
$_SESSION['gezaehlt]=1;
/*
Hier den Code zum schreiben des Counts einfügen
*/
}
?>

[ - Antworten - Zitieren - Direktlink - ]

14.08.2004, 19:12 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Hi Bruzard,


Wenn ich proggen könnt, dann würde mich sicherlich der Ehrgeiz packen, selber was zu stricken.

Hier ging es aber lediglich um eine Notwendigkeit, die ich dringendst hinter mich bringen wollte, damit ich endlich den Rest noch fertigmachen kann.


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]

15.08.2004, 13:49 Uhr

Supimajo
Posts: 1265
Nutzer


[ Dieser Beitrag wurde von Supimajo am 30.07.2005 um 16:54 Uhr editiert. ]

[ - Antworten - Zitieren - Direktlink - ]

16.08.2004, 14:20 Uhr

Cj-Stroker
Posts: 1343
Nutzer
Danke für euere Antworten.

Weiter oben habe ich aber geschrieben, daß mein Problem längst zu gunsten von PHP gelöst ist !
Das Zauberwort war mysql. ;)


MFG

Cj-Stroker
--
Webmaster at Amiforce and Abakus-Design
http://www.Amiforce.de
    (Fight For Amiga)

http://www.cj-stroker.de/Abakus/
(World of AMHuhn and more)

Forum:
http://amiforce-forum.cj-stroker.de

[ - Antworten - Zitieren - Direktlink - ]


-1- [ - Beitrag schreiben - ]


amiga-news.de Forum > Programmierung > Suche CGI-Counter mit Reloadsperre und ohne SSI ! [ - Suche - Neue Beiträge - Registrieren - Login - ]


.
Impressum | Datenschutzerklärung | Netiquette | Werbung | Kontakt
Copyright © 1998-2024 by amiga-news.de - alle Rechte vorbehalten.
.