Autor Zpráva
Jan Vyroubal
Profil *
Ahojte,

potřeboval bych zjistit, jak udělat tlačítko, které zobrazí vedle sebe, kolikrát na něj někdo klikl. Našel jsem návod na js, ale ten se při novém načtení nuluje.

Děkuji moc.
Anonymní
Profil *
Asi by se hodila nějaké širší specifikace. Tohle by se šlo ošéfovat, že by se po klepnutí na tlačítko třeba hodil záznam do databáze a pak by jsi vybíral jen počet záznamů v databázi. Nebo ještě jednodušeji, byl by záznam v databázi s číslem a při každém kliku by se číslo pouze o jedno zvýšilo - protože kdyby v tabulce bylo třeba několik milionu záznamů mohlo by vybírání počtu fungovat trošku pomaleji, ale myslím že toto nehrozí.
Jan Vyroubal
Profil *
Mám tlačítko s názvem "Klikni" a vedle něj počet lidí, kteří klikli. Prosím o návrh jednoduchého řešení nebo navedení, kde hledat (Google znám..:-)).

Děkuji
Jan Tvrdík
Profil
Jan Vyroubal:
Nejednodušší je při kliknutí poslat GET požadavek na server, který kliknutí uloží:

<button id="tlacitko"><?php echo $count; ?></button>
<script>
    document.getElementById('tlacitko').onclick = function () {
        new Image().src = 'counter.php';
        this.innerText = parseInt(this.innerText, 10) + 1;
    };
</script>

V souboru counter.php pak aktualizuješ počítadlo uložené v souboru counter.txt:
<?php
do {
    if (($handle = fopen('counter.txt', 'c+')) === false) break;
    if (flock($handle, LOCK_EX) === false) break;
    if (($count = stream_get_contents($handle)) === false) break;
    if (fseek($handle, 0) === -1) break;
    fwrite($handle, intval($count) + 1);
} while (false);
@flock($handle, LOCK_UN);
Jan Vyroubal
Profil *
Děkuji a jak ho zobrazím na webu?:)

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: