Firefox / Frames / PHP , unerklärliches Verhalten

  • Hallo,

    ich nutze seit kurzer Zeit den Firefox in der Version deutsch 0.9.3

    Ich habe eine Webseite die über ein 100% Frame im Adressfeld
    nur die Hauptdomain anzeigt.

    Hauptdomain = http://www.webseite.de,
    darin enthalten:

    Zitat

    <FRAMESET ROWS=" 100%,* ">
    <FRAME NAME="main" SRC="http://www.webseite.de/verzeichnis/">
    </FRAMESET>

    Im Verzeichnis wird eine index.php aufgerufen, in der ein Zähler integriert
    ist, der folgend aufgerufen wird:

    Zitat

    mysql_query("UPDATE counter SET count = count + 1 ");


    Funktioniert z.B. im Internetexplorer 6.0 und auch im Netscape 7.1


    Im Firefox jedoch wird beim Aufruf von http://www.webseite.de der Counter
    2x hochgezählt.

    Gebe ich im Firefox jedoch http://www.webseite.de/verzeichnis/index.php ein,
    dann wird der Zähler ordungsgemäß um 1 hochgezählt.

    Woran kann das liegen?

    Gruss
    Heiner

  • Probiere das doch mal mit einem Cookie.
    Ohne es zu wissen tippe ich einfach mal darauf, dass der Firefox versucht die Seite (oder Teile davon) im Voraus zu laden. Dabei zählt Dein php-Skript dann einen hoch. Beim eigentlichen Laden des Fensters dann das zweite Mal.
    Ist aber wie gesagt nur geraten. Mit einem Cookie sollte es jedoch zuverlässig gehen.
    Kleiner Tipp am Rande:
    Deine Konstruktion mit dem Datenbankaufruf würde ich anders handhaben.
    Falls die Webseite sehr oft aufgerufen wird, sieht das ungünstig aus.
    Jeder Aufruf öffnet vermutlich die Datenbank, macht den Eintrag und schließt sie wieder => provoziert einen hausgemachten DOS.
    Ist zwar schon eine Weile her das ich PHP gemacht habe aber intuitiv würde ich das mit einer globalen Variable, falls das nicht geht mit irgendeiner anderen Lösung (zur Not mit anfügen von Zeichen in einer Datei) machen. Fast jede andere Lösung scheint mir da besser.
    Die Datenbank würde ich nur ab und zu updaten.
    Gruß
    Clumsy_99