• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Problem mit IP - Besucherzähler

Werbung:
Die Anzahl der Besucher wird nicht erhöht ... Es steht immer nur Besucher Insgesamt: 1; egal wieviele Leute meine Seite aufrufen ...
 
Werbung:
Wie sieht denn dein Script überhaupt aus?

Es ist ja anscheinend bereits ein Eintrag vorhanden, auch wenn dieser falsch eingetragen wurde..

Nichts für ungut, aber du siehst das etwas zu "Selbstverständlich". Es gibt fast unendlich möglichkeiten sowas zu machen, daher können wir nicht wissen, ob du das richtig machst oder irgendwo irgendwelche Fehler vorhanden sind.
 
Hmm.. du erwartest aber nicht, dass ich das Wir War entschlüssel oder? Irgendwo endet meine Ehrenamtliche Nettigkeit auch.

Es hat schon einen Sinn wenn man statt:

Code:
echo "hi";echo "wie";echo "gehts";echo "dir?";

folgendes schreibt:

Code:
echo "Hi";
echo "Wie";
echo "geht";
echo "es";
echo "dir?";

oder

statt:
HTML:
<table><tr><td>Benutzer</td></tr><tr><td>Password</td></tr></table>

folgendes:

HTML:
<table>
  <tr>
     <td>Benutzer</td>
  </tr>
  <tr>
     <td>Password</td>
  </tr>
</table>

Im Grunde genommen ist beides das selbe, jedoch gehört die Einrückung zum Coden wie die Grammatik und Satzzeichen zur Deutschen Sprache.
 
Werbung:
In lesbar und mit etwas mehr Fehlerausgabe:

PHP:
<?php

mysql_connect("localhost", "web304", "sGsFbtKG");
mysql_select_db("usr_web304_1");

$abfrage  = mysql_query("
    SELECT
            `wert`
    FROM
            `daten`
    WHERE
            `bezeichnung` = 'zaehlerstand'
    ") or die(mysql_error());

$ergebnis = mysql_fetch_assoc($abfrage);
$besucherGesamt = $ergebnis['wert'];

mysql_query("
    DELETE FROM
            `besucher`
    WHERE
            `zeit` < (NOW() - INTERVAL 1 DAY)
    ") or die(mysql_error());

$besucherIp = $_SERVER['REMOTE_ADDR'];

$abfrage = mysql_query("
    SELECT
            COUNT(*)
    FROM
            `besucher`
    WHERE
            `ip` = '" . $besucherIp . "'
    ") or die(mysql_error());

$ergebnis   = mysql_fetch_assoc($abfrage);
$besucherSG = $ergebnis['COUNT(*)'];

if (!$besucherSG) {
    $besucherGesamt++;
    mysql_query("
        INSERT INTO
                `besucher`
            (
                `ip`,
                `zeit`
            )
        VALUES
            (
                '$besucherIp',
                NOW()
            )
        ") or die(mysql_error());;

    mysql_query("
        UPDATE
                `daten`
        SET
                `wert` = $besucherGesamt
        WHERE
                `bezeichnung` = 'zaehlerstand'
        ") or die(mysql_error());
}

echo "Besucher insgesamt: $besucherGesamt";

Ich kann nach wie vor nichts daran ändern, dass meine Hinweise zum Thema Debugging nicht beachtet werden.
 
Ich versuche ja deine Ratschläge entgegenzunehmen und ich bedanke mich auch für deine Hilfe, jedoch glaube ich das es eher an der Konfiguration der Tabelle liegt ...
 
Werbung:
Jop die Tabelle ist auch falsch wie mehrmals erwähnt.

Der DatenTyp "Float" ist falsch. Float steht für Dezimal zahlen. Keines deiner Einträge sind Dezimal zahlen.

ID - Integer
IP's sollten als Varchar gespeichert werden
Wörter auch als Varchar
..


Glaub mir , du wirst im Endeffekt viel Länger nach Hilfe suchen, als du Zeit dafür gebraucht hättest in dem du dir selbst geholfen hättest.

*edit*

Such doch einfach nach einem Free IP Counter. Ende. Danach "kannst du ja selbst lernen" oder was du auch vor hattest.
 
Ein 8 Seiten Thema über die Abfrage und Anlage eines Datenbank Eintrages scheint mir etwas lang oder sehe ich da was falsch.
Wenn du mich fragst, wirf den bisherigen Code weg und fang nochmal ganz von Vorne an.

1. Tabellenstruktur erstellen
2. Dateneintrag anlegen
3. Daten Aktualisierung
4. Daten Auswertung (also die eigentliche Zählerei).
 
Zurück
Oben