Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]licznik tekstowy odwiedzin w chomiku
dapon
post 19.01.2013, 13:17:44
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.01.2013

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


Witam.
Od ostatniego tematu wiele się nauczyłem.
W książce PHP5 praktyczny kurs wydanie 2 znalazłem skrypt licznika odwiedzin w formie tekstu.
Napisałem już ten skrypt licznika i nie wiem w jakich formatach zapisać te dwa pliki.
W książce napisali że muszę napisać cały kod licznika wraz z całą zawartością języka html.
Więc napisałem i skopiowałem sam skrypt do osobnego pliku tekstowego.
Jeden plik nazwałe counter, a drugi licznik. Dodam, że wszystko zapisałem w txt.
Najważnieszej żeczy nie napisali w tym poradniku.
W jakim formacie zapisać te 2 pliki.
Czy wystarczy, że zapiszę pierwszy plik w php, a drugi zostawić w txt.
Czy oba pliki zapisać w php.
Acha i najważniejsze pytanie.
Jak taki licznik umieśić na koncie www.chomiku.pl
Go to the top of the page
+Quote Post
b4rt3kk
post 19.01.2013, 13:24:56
Post #2





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Wątpię by dało się umieścić własny kod na stronie chomikuj.pl, choć nie wiem, bo nie korzystam. Kod PHP i HTML w pliku o rozszerzeniu .php. Jeśli licznik działa na zasadzie pliku tekstowego, w którym zapisuje odwiedziny, to ten drugi w .txt.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
dapon
post 19.01.2013, 13:34:44
Post #3





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.01.2013

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


<!DOCKTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<meta http-eqive="Content-Type" content="text/html: charset=iso-8859-2">
<title>Licznik odwiedzin</title>
</head>
<body>
<div style='text-algin:center:'>
Witam na stronie.
</div>
<div><p style='text-algin:center:'>
<?php
function getCounter()
{
if(!file_exites("./licznik.txt")){
//brak pliku licznika
return false;
}
if(!$fd = fopen("./licznik.txt" , "r+")){
//brak dostępu do licznika
return false;
}
flock($fd. LOCK_EX);
$count = fgets($fd);
if(is_numeric($count)){
$result = $count +1;
fseek(($fd. 0);
fputs($fd. $result);
}
else}
//nieprawidłowy format odczytanych danych
$result = false;
}
flock($fd,LOCK_UN)
fclose($fd);
return $result;
}
if(($count = getCounter()) !== false){
if($count ==1){
$razy = 'razy';
}
echo "ta strona została odwiedzona $count$razy'".
}
else{
echo "Licznik odwołań jest czasowo niedostępny.";
}
?>
</p></div>
</body>
</html>

Ten plik zapisałe w formacie php i wrzuciłem go do C://xampp/htdocs
W przeglądarce wpisałem http://localhost/conter.php i nic się nie dzieje tylko wyświetliła się informacja, że nie
połonczono z serwerem.

Wydaje mi się, że doprze napisałem ten skrypt, ale dla pewności wolał bym, żeby ktoś to sprawdził.
Sam skrypt

<?php
function getCounter()
{
if(!file_exites("./licznik.txt")){
//brak pliku licznika
return false;
}
if(!$fd = fopen("./licznik.txt" , "r+")){
//brak dostępu do licznika
return false;
}
flock($fd. LOCK_EX);
$count = fgets($fd);
if(is_numeric($count)){
$result = $count +1;
fseek(($fd. 0);
fputs($fd. $result);
}
else}
//nieprawidłowy format odczytanych danych
$result = false;
}
flock($fd,LOCK_UN)
fclose($fd);
return $result;
}
if(($count = getCounter()) !== false){
if($count ==1){
$razy = 'razy';
}
echo "ta strona została odwiedzona $count$razy'".
}
else{
echo "Licznik odwołań jest czasowo niedostępny.";
}
?>
Zapisałem w formacie txt o nazwie licznik.
Treść skryptu może sobie każdy skopiować do swoich potrzeb .POZWALAM. smile.gif
Go to the top of the page
+Quote Post
b4rt3kk
post 19.01.2013, 13:39:43
Post #4





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Nie połączono z serwerem? A wystartowałeś w ogóle xamppa? Sama instalacja to mało, trzeba go jeszcze uruchomić (apache co najmniej).

Ten post edytował b4rt3kk 19.01.2013, 13:39:57


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
dapon
post 19.01.2013, 13:44:43
Post #5





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.01.2013

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


Okej uruchomiłem xamppa i gdy wszedłem w przeglądarce na licznik tekstowy to zamiast licznika pojawiło mi się takie coś

Parse error: syntax error, unexpected ';' in C:\xampp\htdocs\conter.php on line 27
Co teraz z tym fantem zrobić ?
Go to the top of the page
+Quote Post
b4rt3kk
post 19.01.2013, 13:46:58
Post #6





Grupa: Zarejestrowani
Postów: 1 933
Pomógł: 460
Dołączył: 2.04.2010
Skąd: Lublin

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


Masz błąd w linijce 27. Podejrzewam, że chodzi o to miejsce:

  1. fseek(($fd. 0);


O jeden nawias otwierający za dużo, usuń go.


--------------------
Jeśli pomogłem, kliknij proszę 'pomógł'. Dzięki.
Go to the top of the page
+Quote Post
dapon
post 19.01.2013, 14:06:02
Post #7





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.01.2013

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


Usunołem w pliku .php i w .txt
Nic to nie pomogło.
O co chodzi z tymi cyframi $fd.0
Chodzi mi o to zero.

Zauważyłem, że parę linijek mi brakowało i teks wygląda teraz tak

<!DOCKTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<meta http-eqive="Content-Type" content="text/html: charset=iso-8859-2">
<title>Licznik odwiedzin</title>
</head>
<body>
<div style='text-algin:center:'>
Witam na stronie.
</div>
<div><p style='text-algin:center:'>
<?php
function getCounter()
{
if(!file_exist("./licznik.txt")){
//brak pliku licznika
return false;
}
if(!$fd = fopen("./licznik.txt" , "r+")){
//brak dostępu do licznika
return false;
}
flock($fd. LOCK_EX);
$count = fgets($fd);
if(is_numeric($count)){
$result = $count +1;
fseek($fd. 0);
fputs($fd. $result);
}
else{
//nieprawidłowy format odczytanych danych
$result = false;
}
flock($fd,LOCK_UN)
fclose($fd);
return $result;
}
if(($count = getCounter()) !== false){
if($count ==1){
$razy = 'raz';
}
echo "ta strona została odwiedzona $count$razy".
}
else{
$razy = 'razy';
else{
echo "Licznik odwołań jest czasowo niedostępny.";
}
?>
</p></div>
</body>
</html>

Ten post edytował dapon 19.01.2013, 14:06:33
Go to the top of the page
+Quote Post
_Borys_
post 19.01.2013, 14:59:36
Post #8





Grupa: Zarejestrowani
Postów: 587
Pomógł: 190
Dołączył: 5.02.2011
Skąd: 64-800

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


flock, fseek, fputs i inne - dane w nawiasach oddzielaj przecinkami a nie kropkami, a poza tym literówki, literówki,literówki.

Poprawione:
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html: charset=iso-8859-2"/>
  5. <title>Licznik odwiedzin</title>
  6. </head>
  7. <body>
  8. <div style='text-align:center;'>
  9. Witam na stronie.
  10. </div>
  11. <div><p style='text-align:center;'>
  12. <?php
  13. function getCounter()
  14. {
  15. if(!file_exists("../licznik.txt")){
  16. echo 'Brak pliku licznika<br />';
  17. return false;
  18. }
  19. if(!$fd = fopen("../licznik.txt" , "r+")){
  20. echo 'Brak dostępu do licznika<br />';
  21. return false;
  22. }
  23. flock($fd,LOCK_EX);
  24. $count = fgets($fd);
  25. if(is_numeric($count)){
  26. $result = $count + 1;
  27. fseek($fd,0);
  28. fputs($fd,$result);
  29. }
  30. else{
  31. echo 'Nieprawidłowy format odczytanych danych<br />';
  32. return false;
  33. }
  34. flock($fd,LOCK_UN);
  35. fclose($fd);
  36. return $result;
  37. }
  38. if(($count = getCounter()) !== false){
  39. if($count == 1){
  40. $razy = 'raz';
  41. }
  42. $razy = 'razy';
  43. echo "Ta strona została odwiedzona $count $razy<br />";
  44. }
  45. else{
  46. echo "Licznik odwołań jest czasowo niedostępny.";
  47. }
  48. ?>
  49. </p></div>
  50. </body>
  51. </html>


ale i tak na chomikuj.pl tego nie uruchomisz, tam tylko html i javascript działa.
Jeśli tam chcesz licznik to zajrzyj na Jak uatrakcyjnić opis swojego Chomika

Ten post edytował _Borys_ 19.01.2013, 17:18:24
Go to the top of the page
+Quote Post
dapon
post 19.01.2013, 18:41:10
Post #9





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 17.01.2013

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


Podziękował za poprawienie skryptu.
Działa poprawnie i dzięki za info do chomikuj.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 4.07.2025 - 08:06