IP : koodi

kuinkas

Minulla on php-laskuri joka toimii ihan ok. mutta
siinä on yksi ongelma. Pitäisi saada lisättyä
koodin pätkä joka estäisi samaa IP:tä lisäämästä laskuria n. 15 minuutin ajan . Nyt kun kävijä käy alasivuilla ja klikkaa palatakseen pääsivulle niin lukema lisääntyy, minulla on myös sama laskuri alasivuilla jonne sama IP saakin lisätä lukemansa . Neuvoisko joku koodia mikä pitää lisätä tai mistä sen löytäisi .

5

954

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Koodi-Jere

      Voithan tehdä esim. sellaisen virityksen, joka tallentaa ip:n tiedostoon, joka hävitetään vaikkapa 15 min päästä. Laskuri tarkistaa aina tuosta tiedostosta ip:n ennen kuin kasvattaa varsinaista laskuria.

      Tai sitten teet sessiopohjaisen laskurin. Samalla sessioid:llä ei lisätä kuin kerran laskurin arvoa/sivu. Silloin ei haittaa vaikka kävijä viihtyisi sivuillasi enemmän kuin 15 minuuttia.

      Hyvä tapa opetella koodaamista on tutkia muiden tekemiä juttuja. Esim. ohjemointiputkasta tai mureakuhasta löytyy paljon valmiita kävijälaskureita hyvinkin erilaisilla toteutuksilla. Usein muut käyttäjät ovat vieläpä kommentoineet kyseistä koodia, että mikä siinä mättää ja mikä on hyvää.

      • Anonyymi

        Tai sitten käyttää tietokantaa, kuten MySQL.

        1. Luo tietokantaan taulu, johon tallennetaan IP-osoitteet ja aikaleimat:

        CREATE TABLE visitor_logs (
            id INT AUTO_INCREMENT PRIMARY KEY,
            ip_address VARCHAR(255),
            timestamp TIMESTAMP DEFAULT CURRENT_TIMESTAMP
        );

        2. Lisää seurava koodinpätkä laskurin lisäämisen yhteyteen:

        $ip = $_SERVER['REMOTE_ADDR'];

        $mysqli = new mysqli('localhost', 'kayttaja', 'salasana', 'tietokanta');
        if ($mysqli->connect_error) {
            die('Connection failed: ' . $mysqli->connect_error);
        }

        // Tarkista onko sama IP-osoite lisännyt laskuria viimeisen 15 minuutin aikana
        $query = "SELECT * FROM visitor_logs WHERE ip_address = '$ip' AND timestamp >= DATE_SUB(NOW(), INTERVAL 15 MINUTE)";
        $result = $mysqli->query($query);

        if ($result->num_rows == 0) {
            // Lisää laskuri vain jos samaa IP-osoitetta ei löydy tietokannasta
            $query = "INSERT INTO visitor_logs (ip_address) VALUES ('$ip')";
            $mysqli->query($query);

            // Lisää laskurin lisäyskoodi tähän
        } else {
            echo 'Et voi lisätä laskuria niin usein.';
        }

        $mysqli->close();


    • Anonyymi

      Kysy chatgpt:ltä sen kanssa itse koodaan nykyään.

    • Anonyymi

      Kuka hölmö täällä vastailee johonkin 16 vuotta vanhaan ketjuun? Koittakaa nyt tajuta että tuossa ajassa kehitys on kehittynyt niin paljon, ettei näitä vanhoja ketjuja enää kannata kaivella.

      • Anonyymi

        Protokollat eivät ole sinällään muuttuneet vaikka päällä oleva html hiukan eriltä näyttääkin - tai oikeastaan ei sekään ole muuttunut vaan siihen on tullut lisää ominaisuuksia. Mikset tekisi cookie:ta, joka expiroi 15 minuutin päästä? Jos cookie löytyy äänestää ei pysty. Jos tulkitset hommaa pelkästään IP:n perusteella huomaat yhtäkkiä, että siellä on 16000 käyttäjän ryhmä, jolla kaikilla on sama ip..


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mies, miksi et vaikuta halukkaalta?

      Ihmeellistä käytöstä mieheltä. Toki et ole mikään teinipoika enää.
      Ikävä
      103
      1717
    2. 210
      1547
    3. Ikävä on häntä

      Josta on tullut niin tärkeä ja rakas. Olisinko onnellinen hänen kanssaan. Ne rakastavat silmät jotka mua katsoo aina jos
      Ikävä
      59
      1020
    4. Minkä kultakimpaleen

      Menetän jos en saa häntä. Joku muu saisi nauttia siitä hellyydestä, huumorista ja intohimosta. Ehkä hän ymmärtää nyt mik
      Ikävä
      31
      1000
    5. Terveystalon lääkärit ylilaskuttaneet

      Tämän pörriäiset osaavat, laskuttamisen. Terveystalo myöntää asian. https://www.hs.fi/suomi/art-2000011134269.html "K
      Maailman menoa
      58
      855
    6. En kai koskaan saa sinua

      Koska et usko että riitäisit minulle. Olet aina pitänyt itseäsi liian risana ja heikkona. Katkot korkeutesi, ja poraat k
      Ikävä
      51
      804
    7. Helppo selvittää onko oma täällä

      Laittaa yhden selvän kysymyksen ja jos kukaan ei osaa vastata, niin oikea ei ole täällä. Saa käyttää vapaasti hyödykse
      Ikävä
      49
      785
    8. Tykkäsit nainen

      Aina eniten lähetyssaarnaajassa, muistan miten nautit!😎😚 meidän pitää päästä vielä kokemaan se.
      Ikävä
      36
      745
    9. Kerroppas nyt

      M mies, että kenestä sinä oikein tykkäät, niin saadaan tämä asia muillekin selväksi 😉
      Ikävä
      58
      735
    10. The Summit Suomi: Maxie avaa hyytävästä tilanteesta kuvauksissa: "Veri roiskui ja tajusi, että..."

      Oletko seurannut The Summit Suomea? Tykkäätkö vai et tai mitä mieltä ylipäätään olet sarjasta? Moni katsoja on kaikonnut
      Tv-sarjat
      5
      732
    Aihe