Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Licznik kliknięć
mperlam
post
Post #1





Grupa: Zarejestrowani
Postów: 174
Pomógł: 0
Dołączył: 24.04.2009

Ostrzeżenie: (30%)
XX---


Cześć. Chciałbym stworzyć dość nietypowy licznik ale niestety nie wiem jak. Chodzi o to, że na stronie głównej strony www chcę mieć umieszczony graficzny licznik. Dodawanie do niego pojedynczych liczb wyglądałoby tak, że na osobnej podstronie znajdowałyby się dwa przyciski: + oraz -. Po kliknięciu w + wartość na stronie pow. się o jeden, minus- pomniejsza.

Znalazłem taki skrypt:

Kod
<?php
//Moj pierwszy zegar :-)
if(file_exists("counter.txt")){            //Sprawdza czy istnieje taki plik
    $fp=fopen("counter.txt","r+");        //Otwiera plik paramtetr r+ pozwala pisac, zapisuje w zmiennej $fp
    $count=fgets($fp,6);            //Odczytuje to co jest w pliku
    $count++;                //Inkrementuje zmienna $count
    rewind($fp);            //Ustawia wskaznik na poczatku pliku
    fputs($fp,$count,6);            //Zapisuje inkrementowana $count w pliku mozna urzyc fwrite()
    fclose($fp);            //Zamyka plik
}else{
    $fopen("counter.txt","wb");        //Tworzy plik
    $count="1";            //$count jest inicjowany z wartoscia 1
    fputs($fp,$count,6);            //Wartosc zostaje zapisana w pliku
    fclose($fp);            //Utworzony plik zostaje zamkniety
}

//Ta funkcja troszczy sie o pierwsze zera
$count=sprintf("%03d",$count);

//Tutaj skladam licznik z gifow
for($i=0;$i<3;$i++){
$img_counter=$img_counter . "<img src=counter/" . substr($count,$i,1) . ".gif align=absmiddle width=10 height=14>";
}
echo $img_counter;
?>


Działa bardzo fajnie bo na plikach txt i nie jest skomplikowany. Działa on jednak tak, że wyświetla liczbę wyświetleń strony. Czy mogę prosić o przeróbkę (czyli stworzenie drugiego pliku i przeróbkę tego)? Nie jestem zbyt kumaty a próbowałem coś wymodzić ale średnio mi się to udało...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
MateuszS
post
Post #2





Grupa: Zarejestrowani
Postów: 1 429
Pomógł: 195
Dołączył: 6.10.2008
Skąd: Kraków/Tomaszów Lubelski

Ostrzeżenie: (0%)
-----


  1. <script type="text/javascript">
  2. function submit(id) {
  3. var input=document.getElementById('input');
  4. if(id=='plus') {
  5. input.value='plus';
  6. } else {
  7. input.value='minus';
  8. }
  9. document.form.submit();
  10. }
  11. </script>
  12. <form action="" method="POST" name="form" />
  13. <a href="#" style="color: green" onClick="submit('plus')">+</a> /
  14. <a href="#" style="color: red" onClick="submit('minus')">-</a>
  15. <input type="hidden" name="glos" id="input" />
  16. </form>
  17. <?
  18. // utworz plik glosy.txt
  19. if(isset($_POST['glos'])) {
  20. $glos=$_POST['glos'];
  21. $plik=fopen('glosy.txt','r');
  22. $tekst=fread($plik,200);
  23. if(!empty($tekst)) {
  24. $dziel=str_replace(' ','',$tekst);
  25. $dziel=explode('|',$dziel);
  26. if($glos=='plus') {
  27. @ $plus=$dziel[0]+1;
  28. $tekst=$plus.' | '.$dziel[1];
  29. } else {
  30. @ $minus=$dziel[1]+1;
  31. $tekst=$dziel[0].' | '.$minus;
  32. }
  33. fclose($plik);
  34. $wykasuj=fopen('glosy.txt','w+');
  35. $zapisz=fwrite($wykasuj,$tekst);
  36. if(!$zapisz) {
  37. echo 'Blad przy dodaniu glosu<br /><br />';
  38. } else {
  39. echo 'Dodano glos<br /><br />';
  40. }
  41. fclose($wykasuj);
  42. } else {
  43. $tekst=(0).' | '.(0);
  44. $zapisz=fwrite($plik,$tekst);
  45. fclose($plik);
  46. }
  47.  
  48.  
  49. }
  50.  
  51. // wyswietlanie
  52. $otworz=fopen('glosy.txt','r');
  53. $czytaj=fread($otworz,200);
  54. $plusminus=str_replace(' ','',$czytaj);
  55. $plusminus=explode('|',$plusminus);
  56. echo 'Na + zaglosowalo '.$plusminus[0].' userow, natomiast na - zaglosowano '.$plusminus[1].' razy';
  57. fclose($otworz);
  58.  
  59. ?>


kurcze spoznilem sie ;D jak na matme ;/ No nic moze komus sie przyda

Ten post edytował MateuszScirka 9.11.2009, 16:22:02
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 00:25