Autor | Zpráva | ||
---|---|---|---|
Ayrton1 Profil |
#1 · Zasláno: 7. 12. 2008, 18:15:17
Ahoj, dělám web k jednomu seriálu. V logu jsem chtěl mít nějaký typický obrázek, název seriálu a postavy. Jenže postav je tam víc než dost a zabíraly by 3/4 loga a to není moc hezké. Rozhodl jsem se, že udělám log několik a v každém bude jedna postava. Vím, že pomocí PHP lze náhodně vybírat, že při každém načtení stránky, se zobrazí jiné logo. Zde jsem ale narazil na problém:
1) Jak to udělat ? Prosím potřeboval bych ten skript 2) Není nutností, ale dalo by se pomocí Cookies zařídit, aby uživatel neviděl stále 2 loga za sebou, ale aby si skript vyhledal, která loga ještě neviděl ? A po zobrazení všech log, už je to jedno, dál náhodně vybírat. Díky, snad mi rozumíte :-D |
||
dufeja Profil |
#2 · Zasláno: 7. 12. 2008, 18:34:14
to první je celkem snadné, stačí udělat něco takového:
<? $pole=array("logo1.png","logo2.png","obrazek.png");//tady můžeš mít libovolnej počet cest k obrázkům $nahodne_cislo=rand(0,count($pole)-1);//vybrání náhodného čísla - v tomto případě 0-2 $obrazek=$pole[$nahodne_cislo]; echo "<img src='$obrazek' alt='obrazek' />"; //zobrazení obrázku ?> |
||
king26 Profil |
#3 · Zasláno: 7. 12. 2008, 18:35:44 · Upravil/a: king26
$moznosti=array("obr1.jpg","obr2.jpg","obr3.jpg","obr4.jpg"); $nahoda=rand(0, count($moznosti)-1); $generate=$moznosti[$nahoda]; EDIT: pozdě :-) |
||
dufeja Profil |
#4 · Zasláno: 7. 12. 2008, 18:55:46 · Upravil/a: dufeja
a to druhé:
<? function newCookies($Pole){ for($i=0;$i<count($Pole);$i++){ SetCookie ($Pole[$i], false); } } $pole=array("logo1.png","logo2.png","obrazek.png");//tady můžeš mít libovolnej počet cest k obrázkům if(!isset($_COOKIE[$pole[0]])){newCookies($pole);} $jesteZbyva=false; for($i=0;$i<count($pole);$i++){ if($_COOKIE[$pole[$i]]==false){$jesteZbyva=true;break;} } if(!jesteZbyva){newCookie($pole);} do{ $nahodne_cislo=rand(0,count($pole)-1);//vybrání náhodného čísla - v tomto případě 0-2 $obrazek=$pole[$nahodne_cislo]; } while($_COOKIE[$obrazek]); echo "<img src='$obrazek' alt='obrazek' />"; //zobrazení obrázku ?> Určitě by to šlo i jednodušeji a ani nevim jestli to funguje, ale můžeš to zkusit. |
||
Ayrton1 Profil |
#5 · Zasláno: 7. 12. 2008, 19:11:11
díky, jdu dodělat ty loga a teprv pak to zkusim, takže mi dejte den, dva.
Ještě dotaz: <div id="logo"><img src="logo/logo1.jpg" alt="Logo"> </div> Tak to co píše dufeja mám přidat před to DIV a to div vložit do echo "sem" ? |
||
dufeja Profil |
#6 · Zasláno: 7. 12. 2008, 20:50:32
Takhle:
<div id="logo"> <? ten PHP kód ?> </div> |
||
Časová prodleva: 3 dny
|
|||
Ayrton1 Profil |
#7 · Zasláno: 10. 12. 2008, 17:35:11
Takže výsledek když budu mít 5 obrázků:
<div id="logo"> <? function newCookies($Pole){ for($i=0;$i<count($Pole);$i++){ SetCookie ($Pole[$i], false); } } $pole=array("logo1.jpg","logo2.jpg","logo3.jpg","logo4.jpg","logo5.jpg "); if(!isset($_COOKIE[$pole[0]])){newCookies($pole);} $jesteZbyva=false; for($i=0;$i<count($pole);$i++){ if($_COOKIE[$pole[$i]]==false){$jesteZbyva=true;break;} } if(!jesteZbyva){newCookie($pole);} do{ $nahodne_cislo=rand(0,count($pole)-1); $obrazek=$pole[$nahodne_cislo]; } while($_COOKIE[$obrazek]); echo "<img src='$obrazek' alt='obrazek' />"; //zobrazení obrázku ?> </div> Mám to správně ? Doufám, že jo, snad jsem nic neumazal co by tam mělo být... |
||
dufeja Profil |
#8 · Zasláno: 10. 12. 2008, 17:38:34
Mělo by to tak bejt, zkus to, snad to bude fungovat.
Ty obrázky ale ani nemusíš mít takhle očíslovaný, můžou se jmenovat libovolně. |
||
Majkl578 Profil |
#9 · Zasláno: 10. 12. 2008, 18:20:43
|
||
Časová prodleva: 15 let
|
0