Autor | Zpráva | ||
---|---|---|---|
Jack Profil * |
#1 · Zasláno: 2. 8. 2005, 18:55:13
Zdravím php odborníky!
Potřeboval bych php skript, který na stránku náhodně načte určitý počet ikonek. V php neumím a nechci to dělat v Javě. Mám ideu, jak to bude fungovat. Dokázal by někdo sepsat takovýto skript?) - vytvoření pole "obrazky", které bude obsahovat třeba 10 prvků, obsahem prvků budou cesty k obrázkům //Začátek cyklu - vygenerování náhodného čísla v rozsahu od 0 do indexu posledního prvku pole (délka pole - 1) - zobrazení obrázku (cesta odpovídá prvku pole pod právě vygenerovaným číslem) - prohození obsahu prvku (pod právě vygenerovaným číslem) s obsahem posledního prvku pole - odstranění posledního prvku pole (snad to jde, nevím - jde o to, aby při dalším průchodu cyklu se nevylosoval už jednou použitý obrázek) //Konec cyklu - cyklus se bude opakovat x krát (tj. při 5 opakování se vylosuje 5 náhodných obrázků z deseti) Vypadá to složitě, ale podle mě není. Kdyby se někdo našel, budu rád. Děkuji! |
||
Fred Profil |
#2 · Zasláno: 2. 8. 2005, 19:25:48
To zní jak jednorukej bandita, že by casino?
|
||
fimmos Profil |
#3 · Zasláno: 2. 8. 2005, 19:29:36
zkusil jsem to takhle:
$pole = array('a.jpg', 'b.jpg', 'c.jpg', 'd.jpg', 'e.jpg', 'f.jpg', 'g.jpg', 'h.jpg', 'r.jpg', 'g.jpg', 'h.jpg', 'r.jpg'); srand((float)microtime() * 1000000); shuffle($pole); for ($i = 0; $i < 10; $i++) { echo '<img src="./' . $pole[$i] . '" alt="" /><br />'; } vygeneruje to v náhodném pořadí obrázky, kde název souboru je v poli $pole, zamíchá to a pak vypíše jen deset z toho pole |
||
Fred Profil |
#4 · Zasláno: 2. 8. 2005, 19:51:04
Ono je to tady http://www.alistapart.com/articles/betterrotator/ , ale jen na jeden obrázek.
|
||
Honza Široký Profil |
#5 · Zasláno: 2. 8. 2005, 21:33:40
Ja bych to udelal takhle:
$obrazky = array('a.jpg', 'b.jpg', 'c.jpg', 'd.jpg', 'e.jpg', 'f.jpg', 'g.jpg', 'h.jpg', 'r.jpg', 'g.jpg', 'h.jpg', 'r.jpg'); |
||
Kajman Profil * |
#6 · Zasláno: 3. 8. 2005, 10:28:14
Na podobné věci slouží array_rand...
$obrazky = array('a.jpg', 'b.jpg', 'c.jpg'); srand ((double) microtime() * 10000000); $vybrane = array_rand ($obrazky, 2); Tohle vytvoří nové pole, kde budou náhodné dva obrázky z původního seznamu. |
||
Jack Profil * |
#7 · Zasláno: 4. 8. 2005, 18:00:56
Filmos, Honza Široký: Dík za kódy hoši, fungujou OK.
Jenom mám ještě malej dotaz. Dá se v php udělat vícerozměrné pole? Potřeboval bych totiž zároveň s adresou ikony uchovávat i link, na který budou ikony odkazovat. Tudíž by pak na konci bylo něco jako: echo '<a href="'.$obrazky[$nahodne_cislo ; 1].'"><img src="'.$obrazky[$nahodne_cislo ; 0].'" alt="obrazek" /></a>'; Jde mi jen o způsob zápisu toho řekněme dvourozměrného pole. Díky. |
||
Časová prodleva: 19 let
|
Toto téma je uzamčeno. Odpověď nelze zaslat.
0