AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

[PHP] Counter funktioniert nicht

Ein Thema von PierreB · begonnen am 27. Feb 2005 · letzter Beitrag vom 27. Feb 2005
Antwort Antwort
PierreB
(Gast)

n/a Beiträge
 
#1

[PHP] Counter funktioniert nicht

  Alt 27. Feb 2005, 17:08
Moin,

ich hab mal wieder ein php-Problem:

Ich hab mir mittels Beispielen aus dem Netz versucht einen kleinen Counter zu bauen.
Ich hab ne "counter.txt" erstellt und ins Verzeichnis gelegt. In der Webseite nun
folgender Code:
Code:
<?php
  $file = "counter.txt"; // Dateizuweisung
  $ftp = @fopen($file,"r+"); // Öffnet die Datei zum lesen und schreiben (r+)
  $count = (int)fgets($ftp,10); // Holt die ersten 10 Zeichen aus der Datei.
  $count++; // Addiert eine 1 hinzu
  fwrite($ftp,$count); // Schreibt die neue Zahl in die Datei
  fclose($ftp); // Schließt die Datei wieder
  include($file); // Zeigt den aktuellen Counterstand an
?>
Ich hab das nur auf meinem lokalen PC getestet (mittels php.exe) und es kam
folgendes heraus: Ging ich das erste Mal auf die Seite kam 1. Das zweite mal kommt 12.
Das dritte Mal 1213. Das vierte Mal dann 12131214. Was stimmt nicht am Counter ?

Vielen Dank
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#2

Re: [PHP] Counter funktioniert nicht

  Alt 27. Feb 2005, 17:15
Du machst vereinfacht:
Lese Datei ein;
Erhöhe Zahl um eins;
Hänge neue Zahl an Datei an;
(Und da liegt dein Fehler)

Füg vor dem write mal ein fseek ($zeiger, 0)

P.S. Das (int) brauchst du nicht, PHP ist da viel flexibler als Delphi
  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#3

Re: [PHP] Counter funktioniert nicht

  Alt 27. Feb 2005, 17:22
Ähm wie gesagt, hab keine Ahnung von PHP.
Hab jetzt:
Code:
<?php
  $file = "counter.txt"; // Dateizuweisung
  $ftp = @fopen($file,"r+"); // Öffnet die Datei zum lesen und schreiben (r+)
  $count = (int)fgets($ftp,10); // Holt die ersten 10 Zeichen aus der Datei.
  $count++; // Addiert eine 1 hinzu
fseek($zeiger, 0);
fwrite($ftp,$count); // Schreibt die neue Zahl in die Datei
  fclose($ftp); // Schließt die Datei wieder
  include($file); // Zeigt den aktuellen Counterstand an
?>
War mir klar das es nicht geht, was muss statt zeiger rein ??
  Mit Zitat antworten Zitat
omiT

Registriert seit: 23. Jan 2005
13 Beiträge
 
#4

Re: [PHP] Counter funktioniert nicht

  Alt 27. Feb 2005, 17:30
Als ersten Parameter erwartet fseek() ein Dateihandle, also in deinem fall $file. Sowas kannste auch sehr schnell auf www.php.net nachlesen.
  Mit Zitat antworten Zitat
PierreB
(Gast)

n/a Beiträge
 
#5

Re: [PHP] Counter funktioniert nicht

  Alt 27. Feb 2005, 17:33
Zitat von omiT:
Als ersten Parameter erwartet fseek() ein Dateihandle, also in deinem fall $file. Sowas kannste auch sehr schnell auf www.php.net nachlesen.
Es funktioniert jetzt. (War fseek($ftp, 0); )

Vielen Dank
  Mit Zitat antworten Zitat
Antwort Antwort


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 aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz