IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
mkores.mk
Člen
Avatar
mkores.mk:19.5.2014 19:51

Ahoj,

měl bych dotaz ohledně náhodně generovaných obrázků na web. Mám udělaný web podle zdejších tutoriálů.

Mám tam galerii, která se otevírá přes lightbox a chtěl bych se zeptat, zda by bylo těžké (popř. poradit jak) vytvoření jednoduchého, náhodně generovaného obrázku na index.
Tzn. každému uživateli, který by přišel na web by se zobrazil malý náhled nějaké fotografie s tím, že když by na ní kliknul, byl by to odkaz na fotogalerii.

Doufám že mě chápete :) s HTML a CSS se začínám teprve učit, tak v tom ještě nejsem tak zběhlý, díky

 
Odpovědět
19.5.2014 19:51
Avatar
raito
Člen
Avatar
raito:22.5.2014 0:29

Čistě HTML? Pochybuju, buď server script (např. PHP) nebo javascript. A záleží na tom, co myslíš "náhodně generovaného obrázku" ... to chceš aby ten web vyrobil nějaký obrázek nebo to bylo myšleno tak, že náhodně vybere nějaký z uložených na FTP?

Nahoru Odpovědět
22.5.2014 0:29
Asi sem usnul. Co se dělo posledních... 5 let?
Avatar
Honza Bittner
Tvůrce
Avatar
Odpovídá na mkores.mk
Honza Bittner:22.5.2014 0:43

Toto je záležitost programování, HTML ani CSS nejsou programovací jazyky, tudíž to musíš udělat pomocí JS a PHP.

Například v JS by šly jednoduše přeházet přešoupnutím na náhodný index... ;)

Nahoru Odpovědět
22.5.2014 0:43
FIT ČVUT alumnus :-) Sleduj mě na https://twitter.com/tenhobi a ptej se na cokoli na https://github.com/tenhobi/ama.
Avatar
mkub
Tvůrce
Avatar
Odpovídá na mkores.mk
mkub:22.5.2014 6:48

a v PHP zase by sli ukladat do databaze a potom ich nacitavat nahodne do stranky...

jednoducho na nahodny vyber obrazkov nepouzivaj HTML, ani CSS, HTML+CSS je iba na zobrazenie a designovu upravu vyslednej stranky, nie na lubovolnu manipulaciu s obrazkami, na to su ine jazyky

 
Nahoru Odpovědět
22.5.2014 6:48
Avatar
Neaktivní uživatel:25.5.2014 23:16

Nebo v PHP je mít v jedné složce, načíst jména do array (funkce scandir), zjistit počet (funkce count) a potom vygenerovat náhodný index v danném rozsahu a ověřit zda-li je to obrázek:

<?php
$files = glob('images/');
do {
$fileName = $files[rand(0, count($files)-1)];
} while(!preg_match('/[^.]+.jpeg/', $fileName))
echo '<img src="'.$fileName.'"/>';
?>
Editováno 25.5.2014 23:16
Nahoru Odpovědět
25.5.2014 23:16
Neaktivní uživatelský účet
Avatar
mkores.mk
Člen
Avatar
mkores.mk:31.5.2014 12:33

Jasně, chápu že tohle v CSS + HTML nevytvořím, proto jsem to hodil do fóra o PHP :) spíš jsem chtěl říci, že s ním nemám žádné zkušenosti.

Představuji si to takto: Rámeček, ve kterém bude náhodný obrázek, bude sloužit jako odkaz do fotogalerie. Obrázky se z databáze načítat nebudou (nemám taky žádné zkušenosti), ale budou se načítat ze zvláštní složky, ve kterém budou umístěny náhledy na ně. Při každém refreshy (nebo při přechodu na jinou stránku) se obrázek změní.

vojta.stanek: ten tvůj kód, je myšlený tak, jak výše píšu?

 
Nahoru Odpovědět
31.5.2014 12:33
Avatar
mkores.mk
Člen
Avatar
mkores.mk:31.5.2014 12:48

BTW

Našel jsem na internetu tento skript, myslíte že je použitelný?

function random_imglink(){
    var myimages=new Array()
    //specify random images below. You can have as many as you wish
    myimages[1]="image1.gif"
    myimages[2]="image2.gif"
    myimages[3]="image3.gif"
    myimages[4]="image4.gif"
    myimages[5]="image5.gif"
    myimages[6]="image6.gif"

    var ry=Math.floor(Math.random()*myimages.length)
    if (ry==0)
    ry=1
    document.write('<img src="'+myimages[ry]+'" border=0>')
    }
    random_imglink()
Editováno 31.5.2014 12:49
 
Nahoru Odpovědět
31.5.2014 12:48
Avatar
Uživatel sítě :31.5.2014 20:19

Řešil bych to asi takto:

Vycházím z toho, že obrázky mají názvy z čísel, které jdou po sobě:

1.png, 2.png, atd..

<?php
    $imgname = rand(1, 10); //druhé číslo nahraď tím, které je u tebe poslední
    $img = './images/ ' . $imgname . ' .jpg';
    echo '<img src=" ' . $img . ' ">';
?>

Možností je více.. :)

Nahoru Odpovědět
31.5.2014 20:19
Chybami se člověk učí, běžte se učit jinam!
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.