Witam Was !
Mam 300 zdjęć na moim www .
Jak najprościej śledzić, że który zdjęcie ile razy został otwierany ?
(Taki rozwiązanie szukam ,by nie trzeba było 300 razy pisać coś w kodzie html)
(Licznik albo stat dla otwierania JPG !)
Pozdr. i dziękuję ! Józek
Pozdrawiam
qpon
W html tak mam te fotki :
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233316[1].jpg "<IMG
align=left alt="" border=0 height=140 width=180 src=" 233316[1]_thumb.jpg "
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233329[1].jpg "<IMG
align=bottom alt="" border=0 height=140 width=180 src=" 233329[1]_thumb.jpg "
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233334[1].jpg "<IMG
align=left alt="" border=0 height=140 width=180 src=" 233334[1]_thumb.jpg "
a ilość otwierania tych
233316[1].jpg
233329[1].jpg
...itp
trzeba byłoby liczyć !
Proszę powiedz, jaki kod i gdzie wsadzić do w/w html ?
Dziękuję ! Józef
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233316[1].jpg "<IMG
align=left alt="" border=0 height=140 width=180 src=" 233316[1]_thumb.jpg "
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233329[1].jpg "<IMG
align=bottom alt="" border=0 height=140 width=180 src=" 233329[1]_thumb.jpg "
<P<A HREF="http://www.buty-dzieciece.fc.pl/ Buciki/ 233334[1].jpg "<IMG
align=left alt="" border=0 height=140 width=180 src=" 233334[1]_thumb.jpg "
a ilość otwierania tych
233316[1].jpg
233329[1].jpg
...itp
trzeba byłoby liczyć !
<a href="/buciki.php?id=233316[1]"
2) w php coś co pobiera id, gada z jakąś bazą danych i zwiększa licznik,
a potem wyrzuca HTTP/1.1 302 z Location ustawionym na właściwy URL.
3) Jak to zrobić w php - to już nie ja :)
ethanak
Wtedy aby wyświetlić dane zdjęcie wystarczy:
echo " <img src=\"".$_GET['id'].".jpg\" alt=\"foto\"";
| 2) w php coś co pobiera id, gada z jakąś bazą danych i zwiększa
| licznik, a potem wyrzuca HTTP/1.1 302 z Location ustawionym na
| właściwy URL.
Albo nazywać zdjęcia tak, jak polecą numery ID.
Wtedy aby wyświetlić dane zdjęcie wystarczy:
echo " <img src=\"".$_GET['id'].".jpg\" alt=\"foto\"";
ethanak
" Albo nazywać zdjęcia tak, jak polecą numery ID."
Proszę powiedz trochę konkretniej, na przykładzie !
Taki i taki ma być kod dla 1. i 2. obrazu !
Dziękuję ! Józek
<a href="/buciki.php?id=233316[1]"
Action image/jpeg /buciki.php
// buciki.php
// zwiększanie licznika...
header('content-type: image/jpeg');
imagejpeg(imagecreatefromjpeg($name));
Aleks !
Czy mogłbym do Ciebie pisać mail ?
| <a href="/buciki.php?id=233316[1]"
Skoro mamy nie wprowadzać zmian w HTML-u, to może
.htaccess? Będzie najpewniejszy, oprócz wejść prosto
ze strony zliczy te zewnętrzne:
Action image/jpeg /buciki.php
// buciki.php
// zwiększanie licznika...
header('content-type: image/jpeg');
+ 12.jpg
+ 13.jpg
+ 14.jpg
W Twojej galerii (czy co tam masz) masz coś takiego:
+ <a href="foto.php?id=12"zdjęcie 12</a
+ <a href="foto.php?id=13"zdjęcie 13</a
+ <a href="foto.php?id=14"zdjęcie 14</a
W pliku foto.php jest skrypt odpowiadający za zwiększanie licznika oraz
wyświetlenie odpowiedniego obrazka. Zwiększenie licznika możesz zrealizować
na dwa sposoby:
- trzymasz w bazie danych odpowiednią wartość i ją inkrementujesz,
- trzymasz tą samą wartość w pliku tekstowym.
Przy tym pierwszym założeniu dobrze jeśli wszystie zdjęcia, a raczej
informacje o nich znajdą się w bazie danych. Wtedy jest łatwiej.
Jeśli masz w bazie danych, to wystarczy skorzystać z:
mysql_query("UPDATE nazwa_tabeli SET pole_licznika = pole_licznika + 1
WHERE id = ID_zdjecia");
Samo zdjęcie wyświetlasz tak, jak Ci pisałem:
<img src="<? echo $_GET['id']; ?.jpg"
echo $_GET['id']; - pobierze wartość zmiennej "id" z aktualnego adresu,
więc jeśli jesteś na stronie: bleble.com/foto.php?id=12, to skrypt wyświetli
obrazek:
<img src="12.jpg"
Ale tutaj to już tragedia! W jakim celu przy każdym wywołaniu
obrazka rozkompresowujesz go do bitmapy, a następnie ponownie
kompresujesz do jpg?
1) log.txt (pusty plik ze zmienionymi atrybutami, ja dałem 777)
2) log.php (przetestowany)
<?php
$pattern = "%s %d\n";
$handler = fopen('log.txt', 'r+');
$clicked = basename($_SERVER['PATH_TRANSLATED']);
while(list($current, $hits) = fscanf($handler, $pattern)) {
$result .= sprintf($pattern, $current, $current ===
$clicked?++$hits:$hits); }
rewind($handler);
fwrite($handler, strstr($result, $clicked)?$result:$result .
sprintf($pattern, $clicked, 1));
fclose($handler);
header('content-type: image/jpeg');
echo(file_get_contents($clicked));
?
3) .htaccess (z kropką na początku i bez rozszerzenia)
Action image/jpeg /Buciki/log.php
[ciarabach bzdury]
No i cache poszedł w piz... ?
A pisałem na samym początku o 302...
ethanak
Aleksie !
Proszę podaj mi mail adres !
Pozd.: Joseph