Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Problem z licznikiem i podwójny "scroll"
Forum PHP.pl > Forum > Przedszkole
solivagus
Chcialbym przygotować stronkę która będzie zawierać prosty licznik odporny na odświerzanie strony, na bazie cookie...
Znalazłem taki licznik m.in. na stronie krasnala i zaimplementowałem go do mojego kodu i tu zaczeły się problemy. A mianowicie licznik ten nie jest odporny na odświerzanie
Jeszcze wprowadza mi dodatkowy pasek "scrool". Pasek próbowałem usunąć stosując z css overflow ale nie udało mi się. Pasek ten pojawia się tylko w IE a na Operze i FireFox jest ok. Podwójny pasek znika jeśli usunę kod licznika

Wklejam poniżej kod mojej stronki może ktoś zauważy błędy i będzie w stanie pomóc.
Używam edytora HateML i serwera WampSerwer

wyniki moich wypocin on-line są na stronie http://mdr.prohosts.org

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <?
  3. setcookie("visited", "1",time(), time() + 30 * 86400); 
  4. /* wysyła cookie na komputer użytkownika */
  5. ?>
  6. <? 
  7. $iloscWejsc++;
  8. setcookie("iloscWejsc", $iloscWejsc);
  9. ?>
  10. <html xmlns="http://www.w3.org/1999/xhtml" lang="pl" xml:lang="pl">
  11. <head>
  12. .
  13. .
  14. .
  15.  
  16. </head>
  17. <body style="margin: 0; padding: 0; width: 100%; height: 100%; overflow: hidden" onLoad="D()">
  18.  
  19.  
  20.  
  21.  
  22.  
  23. <div style="position: absolute; z-index: 2; width: 100%; height: 100%; overflow: auto">
  24. <div style="margin: 0px">
  25.  
  26. <center>
  27. <table style='width:95%;height:95%;text-align:center;' >
  28. <tr>
  29. <td style="background-color:transparent;width:20%">
  30. <?php
  31. echo("<P STYLE='text-align:center;font-size:20px;'>Dziś jest:<BR>");  
  32.  
  33. function localStrftime($format, $timestamp = 0)
  34. {
  35. if($timestamp == 0)
  36. {
  37. // Gdy czas nie jest podany to używamy czasu aktualnego
  38. $timestamp = time();
  39. }
  40. // Przyjmuje nowa zmienna %F dla odmienionej nazwy miesiaciąca
  41. if(strpos($format, '%F') !== false)
  42. {
  43. $miesiac = date('m');
  44. // spolszczanie nazw angielskich
  45.  switch($miesiac)
  46. {
  47. case 1:
  48. $miesiac = 'stycznia';
  49.  break;
  50.  case 2:
  51.  $miesiac = 'lutego';
  52.  break;
  53. case 3:
  54. $miesiac = 'marca';
  55. break;
  56. case 4:
  57. $miesiac = 'kwietnia';
  58.  break;
  59. case 5:
  60. $miesiac = 'maja';
  61. break;
  62. case 6:
  63. $miesiac = 'czerwca';
  64. break;
  65. case 7:
  66. $miesiac = 'lipca';
  67. break;
  68. case 8:
  69. $miesiac = 'sierpnia';
  70. break;
  71. case 9:
  72. $miesiac = 'września';
  73. break;
  74. case 10:
  75. $miesiac = 'października';
  76. break;
  77. case 11:
  78. $miesiac = 'listopada';
  79. break;
  80. case 12:
  81. $miesiac = 'grudnia';
  82. break;
  83. }
  84. // formatowanie nazw wynikowych
  85. return strftime(str_replace('%F', $miesiac, $format), $timestamp);  
  86. }
  87. return strftime($format, $timestamp);  
  88. } // end localStrftime();
  89. $dzien = array('Niedziela', 'Poniedziałek', 'Wtorek','Środa' , 'Czwartek', 'Piątek', 'Sobota');
  90. $date = date('d'); //pobiera date z systemu
  91. echo ''.$dzien[date('w')].'<BR> ';
  92. echo localStrftime('%d %F %Y');
  93. echo("</P>");
  94.  ?> 
  95.  
  96. <FORM NAME="ff1">
  97. <table><tr><td><INPUT class="aa" TYPE="text" NAME="czas"></td></tr></table>
  98. </FORM>
  99. </td>
  100. <td style="background-color:transparent">
  101. <?php
  102. $obrazki=array("img/r1.png", "img/r2.png", "img/r3.png", "img/r4.png", "img/r5.png", "img/r6.png", "img/r7.png", "img/r8.png", "img/r9.png", "img/r10.png", "img/r11.png", "img/r12.png", "img/r13.png", "img/r14.png");
  103. srand((float)microtime()*1000000);
  104. $obrazek=$obrazki[array_rand($obrazki)];
  105. echo("<IMG SRC='$obrazek' width='100%' height='120'> ");
  106. ?>
  107. </td>
  108. </tr>
  109. <tr>
  110. <td style="background-color:white" colspan="2" >
  111. <?php
  112. echo("<CENTER>Przysłowie dnia:<br></CENTER>");
  113. $t="cytaty.txt";
  114. $cx=file("$t");
  115. $ccx=rand(0,sizeof($cx)-1);
  116. echo ("<P style='font-family:Arial Tahoma'>");
  117. echo $cx[$ccx];
  118. echo ("</P>");
  119. ?>
  120. </td>
  121. </tr>
  122. <tr>
  123. <td style="background-color:green;width:20%;text-align:center;">
  124. <CENTER>
  125. <TABLE style="width:100%;"> 
  126.  <TR>
  127. <TD class="me" >
  128. <P class="menu" >MENU</P>
  129. <UL class="menu" style="width:100%" >
  130.  <LI class="menu"><A class="menu" HREF="main.php">STRONA GŁÓWNA</A></LI>
  131.  <LI class="menu"><A class="menu" HREF="siec.php">Sieci</A></LI>
  132.  <LI class="menu"><A class="menu" HREF="prog.php">Programowanie</A></LI>
  133.  <LI class="menu"><A class="menu" HREF="download.php">Download</A></LI>
  134.  <LI class="menu"><A class="menu" HREF="omnie.php">O MNIE</A></LI>
  135.  </UL>
  136.  <BR> <BR> <BR>
  137.  </TD>
  138. </TR>
  139.  </TABLE>
  140.  <CENTER>
  141.  
  142.  <!-- /*licznik */ !-->
  143. <div style="position:relative ;overflow: hidden">
  144. <?php
  145.  
  146. echo ("Twoje IP to: <BR><P style='text-align:center;font-size:25px'> ".$_SERVER['REMOTE_ADDR']."</P>");
  147. echo ("Hostem jest:<P style='text-align:center;font-size:20px'> ".gethostbyaddr($_SERVER['REMOTE_ADDR'])."</P>");
  148. echo ("A przeglądarką:<P style='text-align:center;font-size:20px'> ");
  149. echo("".$_SERVER['HTTP_USER_AGENT']."</P>");  
  150. ?>
  151.  
  152. <?php
  153. if(file_exists("counter.txt")) 
  154. { /* sprawdza, czy plik istnieje */ 
  155. $file=fopen("counter.txt", "r"); /* otwiera plik */
  156. flock($file, 1); /* blokuje plik */
  157.  
  158. $ile=fgets($file, 100); /* odczytuje wartość */
  159.  
  160. flock($file, 3); /* odblokowuje plik */
  161. fclose($file); /* zamyka plik */
  162.  
  163. if($visited!="1") /* sprawdza, czy 
  164. użytkownik już odwiedzał stronę */
  165. {
  166. $ile++; /* zwiększa wartość 
  167. o 1 tylko po pierwszym wejściu */
  168. }
  169. }
  170. else
  171. {
  172. $ile=1; /* jeśli plik nie istnieje, wyświetli się 1 */
  173. }
  174.  
  175. $file=fopen("counter.txt", "w"); /* otwiera plik do zapisu */
  176. flock($file, 2); /* blokuje do zapisu */
  177.  
  178. fwrite($file, $ile); /* zapisuje wartość */
  179.  
  180. flock($file, 3); /* odblokowuje plik */
  181. fclose($file); /* zamyka plik */
  182. echo("Stronę 0dpalił0 już:<BR><P style='font-size:30px;color:silver'>");
  183. echo($ile); /* wyświetla wartość */ 
  184. echo("</P>osób<BR>");
  185. ?>
  186. <?
  187. echo("Jesteś tu już po raz: <BR>");
  188. echo($iloscWejsc);
  189. ?>
  190.  
  191. <?php
  192. setcookie('wizyta', time(), time() + 30 * 86400);
  193. if(!isset($_COOKIE['wizyta']))
  194. {
  195. echo '<BR>Witaj, gościu.';
  196. }
  197. else
  198. {
  199.  echo '<BR>Witaj, ostatnio byłeś:<BR> '.date('d.m.Y, H:i', $_COOKIE['wizyta']);
  200. }
  201.  
  202.  ?>  
  203. </div>  
  204.  
  205. </td>
  206. <td style="background-color:yellow;">
  207.  
  208. Tu wpisuje się treść strony
  209.  
  210. </td>
  211. </tr>
  212. </table>
  213.  
  214. <table><tr><td>copy</td></tr></table></center>
  215.  
  216. </div>
  217. </div>
  218.  
  219. <div><img src="img/tlo.jpg" alt="" style="width: 100%; height: 100%; position: absolute; left: 0; top: 0; z-index: 1" /></div>
  220.  
  221. <body>
  222. <head>
GrZyB997
Zajrzyj tutaj: http://www.antylameriada.net/wlicznik/
solivagus
Dzięki za licznik działa!
Jeszcze próbóje tego podwójnego scrolla zrobić...


Wie ktoś jak zmienić czas w częsci kodu odnośni ostatniej wizyty? Niestety serwer jest na amerykańskiej strefie i czas daje mi o 6h za wcześnie...
Próbowałem takie coś dorzucić ale niestety nie działa i nic nie wyświetla
  1. <?php
  2. setcookie('wizyta', time(), time() + 30 * 86400);
  3. if(!isset($_COOKIE['wizyta']))
  4. {
  5. echo '<BR>Witaj, gościu.';
  6. }
  7. else
  8. {
  9. $timestamp = strtotime('+ 6 hours');
  10. echo date('<BR> H:i:s', $timestamp,$_COOKIE['wizyta']);
  11. // echo '<BR>Witaj, ostatnio byłeś:<BR> '.date('d.m.Y, H:i', $_COOKIE['wizyta']);
  12.  //echo '<BR>Witaj, ostatnio tutaj byłeś:<BR> '.date('d.m.Y, H:i:s +6godz.', $_COOKIE['wizyta']);
  13. }
  14.  
  15.  ?>
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.