Autor Zpráva
Skrofa
Profil *
Potřebuji zjistit, jak jsou zobrazovány jednotlivé fotky v galerii. Ale problém je v tom, že používám LightBox.
Pokud bych fotky neotvíral přes JavaScript, bylo by to jednoduché (odkázat na stránku se skriptem počítadla a přesměrovat na obr.)

Ale takto...

Zkoušel jsem spolu s fotkou otevřít nové okno (přes událost onclic), kde je skrip s počítadlem a nové okno skriptem hned zavřít.
<script>
function noveOkno(soubor)
{window.open(soubor, "novyRam","width=1,height=1")}
</script>

<a href="foto/15.jpg" onclick="noveOkno('pocitadlo.php?id=15')" rel="lightbox[skupina1]"><img src="foto/15M.jpg"></a>

To vše funguje, když otevřu fotku přímo z galerie. Ale pokud mezi otevřenými fotky listuju přes LightBox, tak to samozřejmě nic nepočítá.

Proto bych chtěl vědět, jestli pro to máte nějaké (jakékoliv) řešení.
blaaablaaa
Profil
Skrofa:
Vytvor si soubor fotka.php, na ktery se budes odkazovat treba fotka.php?id=15, ve kterem inkrementujes pocitadlo, odesles spravne hlavicky a zobrazis soubor s obrazkem
Skrofa
Profil *
blaaablaaa:
To je ta první možnost, kterou jsem popisoval, ale původně jsem to měl asi špatně napsané, protože mi pak nefungoval LightBox. Teď jsem to zkusil napsat znova a ono to funguje, LightBox i počítání zobrazení. Ale počítá to nepochopitelně jinak, než bych předpokládal.
Když zobrazím jednu fotku, zapíše to k ní DVĚ zobrazení a ještě k tomu jedno zobrazení k fotce před ní a za ní.

Takhle vypadá zjednodušený kód galerie:
<a href="foto.php?id=1a" rel="lightbox[skupina1]"><img src="foto/1aM.jpg"></a>
<a href="foto.php?id=1b" rel="lightbox[skupina1]"><img src="foto/1bM.jpg"></a>
<a href="foto.php?id=2a" rel="lightbox[skupina1]"><img src="foto/2aM.jpg"></a>
<a href="foto.php?id=2b" rel="lightbox[skupina1]"><img src="foto/2bM.jpg"></a>
<a href="foto.php?id=2c" rel="lightbox[skupina1]"><img src="foto/2cM.jpg"></a>
<a href="foto.php?id=3a" rel="lightbox[skupina1]"><img src="foto/3aM.jpg"></a>


A toto je obsah souboru foto.php:
<?php
include ("mysql/connect.php");             //vkládá údaje pro připojení k databázi
$id=$_GET["id"];
                                       
MySQL_Query("UPDATE `fotky` SET `zobrazeno` = (`zobrazeno` + 1) WHERE `soubor` = '$id' LIMIT 1");   //přidat jedeno zobrazení

Header("Location: foto/$id.jpg");          //přesměrování na fotku
?>

Takže např. pokud otevřu fotku 2a, tak se zapíše zobrazení takto:
1b 1 zobr.
2a 2 zobr.
2b 1 zobr.

Původně jsem na konci neměl ten limit, ale nepomohlo ani to když jsem ho tam přidal. Spíš s tím provádí nějaké psí kusy ten LightBox.
Skrofa
Profil *
Prosím, prosím. Nikdo nevíte jak to vyřešit?
Kdyby to započítávalo jenom ty dvě zobrazení u jednoho přístupu, tak bych výsledek dělil dvěmi, ale takto...
blaaablaaa
Profil
Skrofa:
Pravda, lightbox si fotky preloaduje, proto se pricte jedna vpred i jedna vzad. Proc se ale pricitaji dve najednou, nechapu.
Pak leda ajaxem navazat zavolani nejakeho php skriptu pri kliknuti na obrazek + kliknuti na sipky vpred/vzad
Skrofa
Profil *
blaaablaaa:
O ajaxu bohužel nic nevím, ale podle toho, co jsem si o něm teď přečetl by to mělo jít. Asi bych to podle nějakého návodu na netu dokázal zprovoznit při otevření fotky přímo z odkazu, ale při tom listování si to nedovedu představit. To bych se musel hrabat někde ve skriptu Lightbuxu a na to se necítím. V JavaScriptu jsem slabší než v PHP.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

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