Treba mi skripta za prikaz slika ali

Agent Orange

Ističe se
Poruka
2.242
Sve sto sam nalazio ne odgovara mi iz razno raznih razloga...
Evo sta mi konkretno treba...Opisacu detaljno, korak po korak, da bi bilo jasno.
Imam stranicu koja MORA da ostane html ( znaci nista .php .shtml itd )
Na odredjenom mestu na toj stranici zelim da se prikazuje slika odredjenih dimenzija i da se rotira na svakih 24 sata i da tu sliku linkujem gde vec hocu.
Sve slike se nalaze u keyword folderu i imaju keywords imena sto znaci da skripta mora ima mogucnost da definisem imena slika koje da vadi iz foldera a ne da ih vadi po nekim svojim definicijama tipa 1.jpg 2.jpg.
Skripta mora da ima mogucnost da cuva i prikazuje 31 sliku ( svaki dan po jednu ) i kao sto sam vec rekao, da na svaka 24h prikaze novu sliku.
 
To moze da se obavi JavaScriptom.
Ono sto mi nije jasno su imena slika. Sta znaci da slike imaju "keywords" imena?
Najjednostavnije bi bilo da slike imaju imena po danima nesto kao 1.jpg, 2.jpg itd.. pa da se ucitavaju pri dizanju stranice, prema danu u mesecu.
Ali posto to neces, mora da imas neku definiciju imena slika. Nije mi jasna ta ideja o imenima slika.

Nisam siguran da razumem sta mislis ovime:
"Skripta mora da ima mogucnost da cuva i prikazuje 31 sliku "...
 
Ajde da je duduk rekao da ne zna sta su keywords pa da razumem :lol:
codemaker:
Najjednostavnije bi bilo da slike imaju imena po danima nesto kao 1.jpg, 2.jpg itd.. pa da se ucitavaju pri dizanju stranice, prema danu u mesecu.
Ali posto to neces, mora da imas neku definiciju imena slika. Nije mi jasna ta ideja o imenima slika.
.
Neke skripte vuku striktno 1.jpg 2.jpg itd..Meni treba takva skripta da ja sam mogu definisati imena slika koje da vuce...Znaci, ako u folderu imam sliku codemaker.jpg, code-maker.jpg ja moram u samoj skripti da unesem imena slika koje da vuce..kapiras?


codemaker:
Nisam siguran da razumem sta mislis ovime:
"Skripta mora da ima mogucnost da cuva i prikazuje 31 sliku "...
Pa da nije ogranicena skripta da moze samo npr 5 slika da vrti nego da ih mozes ubaciti bezbroj i to da vrti. Ovo sam naglasio jer sam video da u neke skripte mozes samo nekoliko slika da ubacis ( npr 5,10 )
 
Da probam da rezimiram ono što ti treba. Zabranjeto korišćenje bilo kakvog server skript jezika pa sledi da to može da se uradi jedino JavaScript-om. Pomenuti JavaScript prilikom promene datuma treba da prikaže sliku koju si ti unapred definisao za taj datum. Dakle promena slike treba da se uradi bez obzira kada je strana učitana.
 
Agent Orange:
Ajde da je duduk rekao da ne zna sta su keywords pa da razumem :lol:
:) Znam ja sta su keywords, nego nisam razumeo u kakvoj ce onda vezi biti neki keywords sa imenima slika... :)

Agent Orange:
Neke skripte vuku striktno 1.jpg 2.jpg itd..Meni treba takva skripta da ja sam mogu definisati imena slika koje da vuce...Znaci, ako u folderu imam sliku codemaker.jpg, code-maker.jpg ja moram u samoj skripti da unesem imena slika koje da vuce..kapiras?
To jedino da se onda u samom kodu definise i "zakuca", da bude "hardcoded" tako da za svaki dan unapered odredis sliku koju ce za taj dan u mesecu prikazati. Znaci, "codemaker.jpg" za 1. dan u mesecu, "code-maker.jpg" za 2. dan u mesecu, pa kad ti se smuci codemaker, shvatices da nisi trebao ni pocinjati :) Mada "hardcoding" nije nesto sto mi se mnogo svidja, ali hajde...


Agent Orange:
Pa da nije ogranicena skripta da moze samo npr 5 slika da vrti nego da ih mozes ubaciti bezbroj i to da vrti. Ovo sam naglasio jer sam video da u neke skripte mozes samo nekoliko slika da ubacis ( npr 5,10 )
Pa ako se direktno u kod ubace nazivi slika koji ce se dizati za svaki odredjen dan, tu ne vidim ogranicenje? Mozes staviti i 365 naziva slika koje ce se ucitati za svai dan u godini...

Ustvari, sve imam osecaj da si nesto kljucno zaboravi da kazes, jer ovako kako si objasnio, i gore pomenuti Duduk bi odradio samo ako sedne i malo prtabiri knjigu i internet :) Jesi li siguran da si sve sto treba da se uradi kompletno objasnio?
 
Pa ima veze keywords sa imenima slike ( ako ti tako nesto treba naravno ) Sliku reimenujes u neki keyword koji ganjas, u tome je trik.

Upravo tako..u code-u da se definishe..Neke skripte imaju tacno definisano koliko slika imaju.
Npr 1.jpg 2.jpg itd..i tako recimo 10 slika..i bez "hand codinga" mozes samo da se ceses...

Nisam nista zaboravio da napisem, ne brini...A ne sumnjam da bi i Duduk odradio posao uz pomoc googla i knjige, ali ne zaboravi kljucnu stvar - ja sam vrhunski antitalenat za bilo kakvo kodiranje,programiranje i ostale vrste zongliranja a sada da sedim i ucim sve to zarad jedne male skriptice - mislim da je ravno samoubistvu, :mrgreen:
 
Evo nesto da se zabavis za pocetak.
Primer ce ucitati uvek drugu stranu, zaviis od dana u mesecu.
Sklepano na brzinu i sigurno nije najlepse i najkvalitetnije ali je otprilike ono sto vrsi posao. naravn moze se optimizovati, ali to prepustam tebi :)

HTML:
 <HTML>
<HEAD>
<TITLE>The JavaScript Source:  Navigation:  Day of Month Redirection
<META HTTP-EQUIV="The JavaScript Source" CONTENT =" no-cache">
</HEAD>

<body onLoad="dajsliku()">

<SCRIPT LANGUAGE="JavaScript">
function dajsliku() {
today = new Date();
var day = today.getDate();
arday = new Array("dan1.jpg","dan2.jpg","dan3.jpg","dan4.jpg","dan5.jpg","dan6.jpg","dan7.jpg","dan8.jpg","dan9.jpg",
"dan10.jpg","dan11.jpg","dan12.jpg","dan13.jpg","dan14.jpg","dan15.jpg","dan16.jpg","dan17.jpg","dan18.jpg","dan19.jpg",
"dan20.jpg","dan21.jpg","dan22.jpg","dan23.jpg","dan24.jpg","dan25.jpg","dan26.jpg","dan27.jpg","dan28.jpg","dan29.jpg",
"dan30.jpg","dan31.jpg");
document['dani'].src = arday[day-1];
}
</script>

<img src="dan27.jpg" name="dani"><br "clear=all">

<A HREF="nekastrana.html">my resume</A>

</BODY>
</html>

- Napravis 31 sliku koje se sve zovu "dan"+redni broj dana u mesecu. Dakle kao u skripti "dan1.jpg","dan2.jpg" i tako do 31. Moras uzeti u obzir sve dane.

- Neka te ne zbunjuje dan-1 U javaScript numerisanje elemenata array pocinje od 0 kao i u mnogim jezicima, mada imajezika koji pocinju od 1. Tako kad je dan 26. u mesecu on bi zapravi gadjao fizicki element na 27. mestu - "dan27.jpg". Umanjen za 1 gadja pravikno na "dan26.jpg"

- Inicijalno je unutar <body> navedeno
<img src="dan27.jpg" name="dani">
znaci uzeo sam neku sliku iz niza kao inicijalno postaljenu ali se ona menja iste sekunde kad se strana ucita, tako da mozes da napravis praznu sliku "dan0.jpg" na primer i ona ce odmah biti "pregazena" cim se strana ucita.

- deo koda
<A HREF="nekastrana.html">my resume</A>
je cisto radi primera..
 
Evo nešto što bi trebalo da radi, ako sam dobro shvatio šta treba. Ovaj deo ide u head sekciju strane:
Kod:
<script type="text/javascript">

var imagePanel = new Object()

imagePanel.path = "keywords/"
imagePanel.imageNames = ["day1.gif", "day2.gif", "day3.gif", "day4.gif", "day5.gif", "day6.gif", "day7.gif", "day8.gif", "day9.gif", "day10.gif", "day11.gif", "day12.gif", "day13.gif", "day14.gif", "day15.gif", "day16.gif", "day17.gif", "day18.gif", "day19.gif", "day20.gif", "day21.gif", "day22.gif", "day23.gif", "day24.gif", "day25.gif", "day26.gif", "day27.gif", "day28.gif", "day29.gif", "day30.gif", "day31.gif"]
imagePanel.instances = 0
var lastImageIndex = -1

imagePanel.imageHTML = function(imageIndex) {
	return '<img src="' + imagePanel.path + imagePanel.imageNames[imageIndex] + '" />'
}

imagePanel.display = function() {
	var panelInstance = this
	this.spanid = "imagepanelspan"+(imagePanel.instances++)
	document.write('<span id="'+this.spanid+'">')
	this.update()
	setInterval(function(){panelInstance.update()}, 1000)
}

imagePanel.display.prototype.update = function() {
	var dateobj = new Date()
	var dayNumber = dateobj.getDate()
	if (dayNumber - 1 != lastImageIndex) {
		lastImageIndex = dayNumber - 1
		var currentImageHTML=imagePanel.imageHTML(lastImageIndex)
		document.getElementById(this.spanid).innerHTML=currentImageHTML
	}
}
</script>
Potrebno je samo promeniti nazive image-a i eventualno putanju do njih. Sledeće parčence koda ide u body sekciju tamo gde hoćeš da ti se prikazuju image-i.
Kod:
<script type="text/javascript">
new imagePanel.display()
</script>
I to bi bilo sve što se koda tiče.
 
bojan p:
Evo nešto što bi trebalo da radi, ako sam dobro shvatio šta treba. Ovaj deo ide u head sekciju strane:
Kod:
<script type="text/javascript">

var imagePanel = new Object()

imagePanel.path = "keywords/"
imagePanel.imageNames = ["day1.gif", "day2.gif", "day3.gif", "day4.gif", "day5.gif", "day6.gif", "day7.gif", "day8.gif", "day9.gif", "day10.gif", "day11.gif", "day12.gif", "day13.gif", "day14.gif", "day15.gif", "day16.gif", "day17.gif", "day18.gif", "day19.gif", "day20.gif", "day21.gif", "day22.gif", "day23.gif", "day24.gif", "day25.gif", "day26.gif", "day27.gif", "day28.gif", "day29.gif", "day30.gif", "day31.gif"]
imagePanel.instances = 0
var lastImageIndex = -1

imagePanel.imageHTML = function(imageIndex) {
	return '<img src="' + imagePanel.path + imagePanel.imageNames[imageIndex] + '" />'
}

imagePanel.display = function() {
	var panelInstance = this
	this.spanid = "imagepanelspan"+(imagePanel.instances++)
	document.write('<span id="'+this.spanid+'">')
	this.update()
	setInterval(function(){panelInstance.update()}, 1000)
}

imagePanel.display.prototype.update = function() {
	var dateobj = new Date()
	var dayNumber = dateobj.getDate()
	if (dayNumber - 1 != lastImageIndex) {
		lastImageIndex = dayNumber - 1
		var currentImageHTML=imagePanel.imageHTML(lastImageIndex)
		document.getElementById(this.spanid).innerHTML=currentImageHTML
	}
}
</script>
Potrebno je samo promeniti nazive image-a i eventualno putanju do njih. Sledeće parčence koda ide u body sekciju tamo gde hoćeš da ti se prikazuju image-i.
Kod:
<script type="text/javascript">
new imagePanel.display()
</script>
I to bi bilo sve što se koda tiče.

Dosta komplikovano?
Osim toga, zasto je interval pa jos 1 sekunda?
Koliko sam razumeo, kod bi trebalo da pri svakoj poseti strane, kontrolise datum i prema tome odredi koju sliku ce da prikaze? Ne vidim potrebu za intervalom, pogotovo od jedne sekunde. Ako danas bilo ko poseti stranu, pokazace se slika "dan26.jpg" i tako celog dana, sutra sledeca slika.
Naravno, ako neko pokrene stranu danas u 23:59 i ostane do sutra u 00:01, strana bi trebalo da automatski pokaze sledecu sliku, ali to je ipak ekstremni slucaj i ne verujem da vredi komplikovanog koda sa sve timerom?
 
codemaker:
Dosta komplikovano?
Osim toga, zasto je interval pa jos 1 sekunda?
Koliko sam razumeo, kod bi trebalo da pri svakoj poseti strane, kontrolise datum i prema tome odredi koju sliku ce da prikaze? Ne vidim potrebu za intervalom, pogotovo od jedne sekunde. Ako danas bilo ko poseti stranu, pokazace se slika "dan26.jpg" i tako celog dana, sutra sledeca slika.
I jeste i nije.
Interval može da se poveća na jedan minut, ali onda neko može da se pobuni kako nije tačno u 00:00:00 promenio image na strani.
Kako sam ja razumeo problem, možda pogrešno, slika treba da se promeni na strani pri promeni datuma bez obzira da li je strana učitana danas ili pre 3 dana. Ukoliko na strani treba da se prikaže slika koja odgovara onom danu kada je strana učitana, onda sve ovo može mnogo jednostavnije, naravno.
 
codemaker:
....
Naravno, ako neko pokrene stranu danas u 23:59 i ostane do sutra u 00:01, strana bi trebalo da automatski pokaze sledecu sliku, ali to je ipak ekstremni slucaj i ne verujem da vredi komplikovanog koda sa sve timerom?
@off topic
Ekstremni slučajvei, to je nešto što prosto "obožavam". Davno sam prestao da brojim koliko puta mi se desilo da pri radu na nekom projektu ne dobijem sve neophodne informacije i onda tokom testiranja zaključim da ima nekih specijalnih slučajeva koje niko nije pomenu. Na pitanje, što to niko nije rekao tokom analize i dizajna sledi već dobro znani odgovor: "Ali to se retko dešava!".
 
bojan p:
@off topic
Ekstremni slučajvei, to je nešto što prosto "obožavam". Davno sam prestao da brojim koliko puta mi se desilo da pri radu na nekom projektu ne dobijem sve neophodne informacije i onda tokom testiranja zaključim da ima nekih specijalnih slučajeva koje niko nije pomenu. Na pitanje, što to niko nije rekao tokom analize i dizajna sledi već dobro znani odgovor: "Ali to se retko dešava!".
Pricaj mi o tome... :(
Znas kako se kaze ".. ma kako dobar sistem za akviziciju podataka napravio, uvek se nadje neka dosetljiva budala koja ce uneti pogresan podatak...
U mom uzasno dugom progamerskom zivotu, uvek sam se iznenadio koliko je situacija koje jednostavno nije moguce normalnim razmisljanjima predvideti.... I nikada nisam uspeo da sve predupredim...
 
Naravno da nije moguće sve predvideti i preduprediti, ali je zato jako korisno da testiranje kod korisnika ide paralelno sa razvojem i da onda imaš povratne informacije na tu temu što pre. I naravno da u čitavoj priči mnogo pomaže ukoliko možeš da nađeš nekoga ko će da objasni što tačnije i preciznije šta se radi, ali takvu osobu obično nije lako naći.
 

Back
Top