php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 14.07.2008, 20:15  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard Reaload Sperre beim Themen Hits count?

Hallo Gemeinde!

Wie kann ich es verhindern wenn man in einem Thema sich gerade befindet das bei einem Klick auf den Aktualisierungs Knopf im Browser sich der Wert der Hits erhöht?

Ich überlege schon die ganze Zeit. Es soll praktisch nur hoch gezählt werden wenn man auf den Themenlink klickt um die Beiträge zu lesen.

Ich hoffe ich habe mich verständlich ausgedrückt?

Momentan ist es so das der count für die Themenaufrufe per Update rauf gezählt wird wenn die show_thread.php per Klick aufgerufen wird,aber leider eben auch wenn man auf den Aktualisierungs Knopf im Browser klickt und das würde ich gern verhindern!

Danke für eure Tipps mfg der litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 14.07.2008, 20:20  
da schreibt der ElePHPant
 
Benutzerbild von Flor1an
 
Registriert seit: 18.06.2008
Beiträge: 8.903
PHP-Kenntnisse:
Fortgeschritten
Flor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer AnblickFlor1an ist ein wunderbarer Anblick
Standard

UserID + ThreadID in eine Tabelle speichern, vor dem UPDATE checken ob schon ein Eintrag existiert, wenn ja wurde schon hochgezählt.

Möglichkeit das ganze auch auf Zeit zu beschränken, indem du nur Einträge überprüfst die nicht länger als x Stunden her ist.
Oder anstatt UserID kannst du auch IP nehmen oder sonst was.
Flor1an ist offline  
Alt 14.07.2008, 20:31  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Mit IP und aller Stunden gerechnet wäre Sinnvoller!

Nur müsste da ja bei jeder IP die neu kommt ein neuer Datensatz rein geschrieben werden,oder ich könnte nach 24 Stunden die IP löschen bzw. wenn die IP gelöscht wird den ganzen Datensatz,das könnte so funktionieren oder?

Nur mit dem Datum bzw. Zeit berechnen tu ich mich grad schwer.

Ich schreibe ein Datum so in die DB
PHP-Code:
$datum time(); 
Ich weis gibt andere vieleicht auch bessere Methoden aber ich machs halt so. Das Datum lese ich dann so
PHP-Code:
$datum date("d.m.Y H:i",$row_user['datum']); 
Wie kann ich danach dann die Stunden etc. berechnen?

mfg der litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
Alt 14.07.2008, 20:45  
dex
Erfahrener Benutzer
 
Registriert seit: 17.06.2008
Beiträge: 195
dex befindet sich auf einem aufstrebenden Ast
dex eine Nachricht über ICQ schicken
Standard

Also vom Sinn würde ich es so machen:

Ein Script schreiben, dass aus der Datenbank informationen bekommt, ob der Benutzer diesen Thread schon einmal angeguckt hat, oder ob kein Eintrag vorhanden ist, der der UserID/der IP und der ThreadID entspricht...

Dann kommt folgendes: Alle Datensätze die in der Datenbank liegen und älter als x Stunden sind sollen gelöscht werden.

Danach (immernoch im selben Script) einen Eintrag machen, falls kein Eintrag existiert oder ein vorheriger Eintrag gerade gelöscht wurde, da er x Stunden alt ist. Und natürlich den Zähler erhöhen


Wenn das jetzt zu kompliziert war, oder dir nicht wirklich weiterhilft, sollte ich glaube ich lesen & schreiben lernen x)

Gruß,
dex

Geändert von dex (14.07.2008 um 20:50 Uhr).
dex ist offline  
Alt 14.07.2008, 21:15  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Zitat:
Ein Script schreiben, dass aus der Datenbank informationen bekommt, ob der Benutzer diesen Thread schon einmal angeguckt hat, oder ob kein Eintrag vorhanden ist, der der UserID/der IP und der ThreadID entspricht...
Bis hier gehe ich mit. Die Tabelle könnte gleichzeitig verwendet werden, für die jeweilige Kombination User-Thread den Gelesen-Status zu speichern
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 14.07.2008, 21:28  
dex
Erfahrener Benutzer
 
Registriert seit: 17.06.2008
Beiträge: 195
dex befindet sich auf einem aufstrebenden Ast
dex eine Nachricht über ICQ schicken
Standard

Guter Einfall, da hast du recht.
Aber man sollte es nicht in eine Tabelle speichern, sondern zwei daraus machen, da bei einem neuen Post die "gelesen"-Einträge gelöscht werden sollten.
Somit funktioniert der Hits-counter nichtmehr
dex ist offline  
Alt 14.07.2008, 21:30  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Stimmt. Außerdem ist es auch fraglich, ob Hits und gelesen zwingend dasselbe wären. Wenn ich einen Thread öfter lese, weil viele nützliche Infos drinstehen, dann darf das auch ruhig in der Hit-Info auftauchen...
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 14.07.2008, 21:33  
dex
Erfahrener Benutzer
 
Registriert seit: 17.06.2008
Beiträge: 195
dex befindet sich auf einem aufstrebenden Ast
dex eine Nachricht über ICQ schicken
Standard

Hehe, richtig.

Also, litter, welche Methode brauchst du nun? Hast du schon über die Alternative nachgedacht?

PS: Welche ist die "Standartmethode"? Bei jedem mal lesen hochzählen, oder???
dex ist offline  
Alt 14.07.2008, 21:37  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.989
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Hier nicht. Übrigens kann man den Lesestatus der aktuellen Sitzung auch in der Session speichern. Nur Beiträge, die nicht drin stehen werden Zähler-inkrementiert und ge'updatet
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 15.07.2008, 12:59  
Erfahrener Benutzer
 
Benutzerbild von litterauspirna
 
Registriert seit: 24.04.2008
Beiträge: 3.172
PHP-Kenntnisse:
Anfänger
litterauspirna sorgt für eine eindrucksvolle Atmosphärelitterauspirna sorgt für eine eindrucksvolle Atmosphäre
litterauspirna eine Nachricht über ICQ schicken
Standard

Hallo Leute!

Ich konnte nicht eher schreiben!

Interessante Vorschläge und ich werde mich mal ans Werk machen und wenn ich Probleme mit etwas bekomme dann wende ich mich wieder hier rein!

Vielen Dank für eure Tipps!

mfg der litter
__________________
Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
http://www.lit-web.de
litterauspirna ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
realoadsperre, php counter eigene hits nicht zählen, counter realoadsperre, php counter mit realoadsperre

Alle Zeitangaben in WEZ +2. Es ist jetzt 18:57 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum