DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > (X)HTML, JavaScript, DHTML, XML, CSS
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

(X)HTML, JavaScript, DHTML, XML, CSS Client scripting tehnologije, Dynamic HTML, Cascading Stylesheets, XML i standardi

Odgovori
 
Alati teme Način prikaza
Staro 12. 07. 2007.   #1
conica
Pilece krilce(reš)
Master
 
Avatar conica
 
Datum učlanjenja: 12.01.2006
Lokacija: Little boy's playground
Poruke: 604
Hvala: 47
61 "Hvala" u 27 poruka
conica će postati "faca" uskoro
Pošaljite ICQ poruku za conica Pošaljite poruku preko MSN za conica Pošaljite poruku preko Skype™ za conica
Default Dilema - obrada podataka na klijentu ili serveru

Situacija:
U extranet sistemu administrator "kreira" sastanak. Unose se osnovni podaci, fajlovi itd.
Potrebno je implementirati sistem dozvola pristupa korisnicima.
U sistemu postoje organizacije, pod-organizacije i user grupe.

Korisnik uvek mora da bude clan neke organizacije.
Korisnik moze da bude clan jedne ili vise organizacija i/ili pod-organizacija.
Korisnik moze da bude clan neke user grupe.
Broj korisnika u bazi - ~1000

Prilikom definisanja pristupa, administrator odabira (check box) organizaciju, pod-organizaciju i/ili user grupu (u daljem tekstu OPG) ciji clanovi ce imati pristup podacima sa sastanka. Osim toga, postoji i select box (moguca implementacija multiple select-a) pojedinacnih korisnika (situacija kada administrator konkretno zna osobu koja treba da ima pristup i kada je broj takvih osoba mali).
Odabrani korisnici prikazuju se svaki sa svojim check box-om na spisku - postoji mogucnost da se od-cekiranjem nekog korisnika on skine sa spiska.

Dilema:
SITUACIJA1 - OBRADA PODATAKA NA KLIJENTU - prilikom ucitavanja strane, ucita se kompletan spisak korisnika u niz A i cuva se u globalnoj varijabli.
1. Prilikom svakog cekiranja neke OPG, obradjuje se niz A i kreira se niz B koji predstavlja samo odabrane korisnike. Prikazuje se spisak odabranih korisnika. Azurira se select koji sadrzi sve neodabrane korisnike iz OPG.
2. Prilikom od-cekiranja nekog korisnika sa spiska, OPG kojoj on pripada ostaje cekiran ali je tekst sive boje (promena klase). Spisak se automatski azurira (korisnik se skida sa spiska).
3. Prilikom odabira pojedinacnog korisnika iz select-a, korisnik se automatski dodaje na spisak (obradjuje se niz A i azurira se niz B) i automatski se prikazuje na spisku.
4. Prilikom naknadnog cekiranja (od-cekiranja) OPG, obradjuje se A i azuriraju niz B i select box.

SITUACIJA2 - OBRADA PODATAKA NA SERVERU - niz A predstavlja vrednost hidden polja u kojem se cuva spisak odabranih korisnika putem cekiranja OPG. Niz B predstavlja vrednost hidden polja u kojem se cuvaju korisnici uneti preko select box-a (pojedinacni korisnici).
1. Prilikom svakog cekiranja (od-cekiranja) neke OPG, odlazi se na server i salje se id cekiranog (od-cekiranog) OPG i elementi niza A i B. Vraca se novi niz A sa unikatnim vrednostima i modifikovani niz B (ukoliko se putem selecta uneo korisnik koji se nalazi u novo-cekiranoj OPG, on se skida sa niza B i smesta u niz A). Azurira se select koji sadrzi sve neodabrane korisnike iz OPG.
2. Prilikom od-cekiranja nekog korisnika sa spiska, ostaje se na klijentu, azurira se niz A i niz B, azurira se spisak, select box i menja se klasa OPG kojoj pripada.
3. Prilikom odabira pojedinacnog korisnika iz select-a, ostaje se na klijentu, azurira se niz B, select box, spisak i menja se klasa OPG kojoj pripada.
4. Prilikom naknadnog cekiranja (od-cekiranja) OPG, ponavlja se opcija 1. odnosno odlazi se na server i vrsi obrada.

E SAD....
ako postoji elegantniji nacin, slobodno ga predlozite (posto sam gotovo sigurna da postoji)
I GLAVNO PITANJE: koja situacija je brza i jednostavnija za administratora.
__________________
HomeOfWeb | BLOG: (hrk)pljuc.com
conica je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #2
Pedja
Predrag Supurović
Grand Master
 
Datum učlanjenja: 24.01.2006
Lokacija: Užice
Poruke: 791
Hvala: 3
200 "Hvala" u 12 poruka
Pedja is on a distinguished roadPedja is on a distinguished roadPedja is on a distinguished road
Default

Ja sam uvek za to da posao radi server a da se klijent bavi samo prikazom...
Pedja je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #3
dee
Domagoj Horvat
Expert
 
Avatar dee
 
Datum učlanjenja: 24.07.2006
Lokacija: Zagreb
Poruke: 502
Hvala: 22
10 "Hvala" u 8 poruka
dee is on a distinguished road
Pošaljite ICQ poruku za dee
Default

Citat:
Originalno napisao Pedja Pogledajte poruku
Ja sam uvek za to da posao radi server a da se klijent bavi samo prikazom...
nacelno da, al lici na puno mucenja i servera i admina koji radi da se za svaki check cima server.

zasto ne otprilike ovako:

- ucitavanjem stranice, na klijentu postavis za svaku organizaciju/podorganizaciju/usergrupu po jedan niz + niz svih korisnika
- clanovi niza su useri koji pripadaju toj OPG -> neki_opg[n] = userN
- prilikom (od)chekiranja bilo koje OPG/usera dodajes/brises neki_opg[n]
- nakon sto se sve odradi -> submit na server
__________________
postoje ludosti bez kojih je nemoguce ljudsko dostojanstvo

Poslednja izmena od dee : 13. 07. 2007. u 01:28.
dee je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #4
misk0
majstor
Wrote a book
 
Avatar misk0
 
Datum učlanjenja: 30.01.2006
Lokacija: Lugano - Switzerland
Poruke: 1.251
Hvala: 219
106 "Hvala" u 67 poruka
misk0 će postati "faca" uskoromisk0 će postati "faca" uskoro
Pošaljite ICQ poruku za misk0 Pošaljite poruku preko Skype™ za misk0
Default

Dilema. Buduci da su administratori osobe od povjerenja, slanje svih podataka k njemu ne bi trebalo narusiti sigurnost, ali opet ako nije potrebno - izbjegavati - svesti rizik na minimum. Osim toga, administratora nema 1000 pa da to nesto posebno opterecuje server i u slucaju kad bi se sve odradjivalo na serveru. Ja bih to uradio na serveru - laksa manipulacija podataka, imas server side jezik a ovamo se moras zezati sa Javascriptom (ako sam dobro skontao tehnologije koje se koriste).
misk0 je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #5
cvele
Banned
Knowledge base
 
Avatar cvele
 
Datum učlanjenja: 01.07.2005
Poruke: 1.598
Hvala: 206
140 "Hvala" u 89 poruka
cvele ima spektakularnu aurucvele ima spektakularnu auru
Default

Moj predlog bi bila kombinacija. Odnosno predlozio bih ti da podatke o izabranim korisnicima drzis u sesiji.
Na strani na kojoj ti je interfejs, za svaki checkbox (select, whatever) implementiras ajax poziv koji na promenu vrednosti salje(ajax) podatke skripti koja osvezava sesiju. Sama organizacija niza unutar sesije je nebitna.
Na "submit" svega, sledeca strana je svesna osvezene sesije i mozes da obradjujes podatke prosledjene preko sesije.
cvele je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #6
conica
Pilece krilce(reš)
Master
 
Avatar conica
 
Datum učlanjenja: 12.01.2006
Lokacija: Little boy's playground
Poruke: 604
Hvala: 47
61 "Hvala" u 27 poruka
conica će postati "faca" uskoro
Pošaljite ICQ poruku za conica Pošaljite poruku preko MSN za conica Pošaljite poruku preko Skype™ za conica
Default

mda...izgleda da ce biti kombinacija obrade na serveru i javascripta (ajax)

@Pedja, @mishk0: kompletna obrada na serveru mi je malo rizicno posto moze da se desi sledeca situacija: pre momenta cekiranja neke OPG admin ne zna koje sve osobe joj pripadaju. Cekirace neku OPG koja recimo ima 40 clanova - ide se na server, pokupi se spisak i prikazuje se adminu (svako ime sa svojim cekiranim boxom). Onda treba da odstrani recimo 10 ljudi, i sa svaki check se opet ide na server. Onda se seti da mu treba jos neki OPG, i opet se ide na server i opet se sve ponavlja. Zatim mu ipak ne odgovara prvi cekirani OPG, ide na server i opet azurira spisak. Dodaje usera iz selecta i opet na server.....
Pod pretpostavkom da je administrator extranet-a idiot (ne u pogrdnom znacenju, vec da bi se istakla obaveznu "idiotproof" karakteristiku aplikacije), ovakvih smorova moze da bude previse.

@dee: ovo bi bila varijacija situacije 1 koju sam opisala. Problem je sto jedna osoba moze a ne mora da pripada vise OPG. To znaci da bi za svako odcekiranje boxa osobe, morala da prevrtim svaki taj niz (vec sada imam oko 40 organizacija clanica, 5 pod-organizacija i 15 user grupa). Tu mi je bila dilema kod te situacije koliko cu da smorim klijenta, odnosno koliko ce biti opterecen.

@cvele: pojasni malko

Za sada mi je favorit opcija kada:
1. operacije koje treba da vrate spisak korisnika saljem na server (cekiranje / odcekiranje OPG-a)
2. operacije koje inicira neka funkcija pojedinog korisnika radim na klijentu.
Recimo - ako id check box-a u spisku korisnika ne sadrzi samo njegov id vec recimo a[,a1,a2]-b[,b1.b2]-c[,c1,c2]-d, gde su a - id organizacije, b - id podorganizacije, c - id user grupe i d - id korisnika, onda bih promene klase i cekiranja (odcekiranja) OPG mogla da radim klijentski.
__________________
HomeOfWeb | BLOG: (hrk)pljuc.com

Poslednja izmena od conica : 13. 07. 2007. u 10:05.
conica je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #7
MrSteel
Moderator
Professional
 
Avatar MrSteel
 
Datum učlanjenja: 26.04.2007
Poruke: 350
Hvala: 0
4 "Hvala" u 4 poruka
MrSteel is on a distinguished road
Default

koliko sam ja radio web aplikacije, a jesam dosta izracunavanje na strani servera koje zahteva excel tip obrade podataka, dakle promena vrednosti odmah rezultuje promenom neke druge vrednosti na stranici ajax ne dolazi u obzir

bullet time effekat, vreme kao da staje na sekundu ili par sekundi i nastavlja
jednostavno dok ti posaljes serveru i sacekas odgovor interakcija se izgubi
najbolje da probas ali ja sam se jednom prevario i vise nikad

ja govorim iz iskustva samo o racunanju i slicnim rabotama, ovo oko logovanja ako je samo to sa nizovima potrebno i nije ti potreban rezultat odmah onda moze i ajax

mozda ce nekad da pomogne ovaj moj savet
MrSteel je offline   Odgovorite uz citat
Staro 13. 07. 2007.   #8
conica
Pilece krilce(reš)
Master
 
Avatar conica
 
Datum učlanjenja: 12.01.2006
Lokacija: Little boy's playground
Poruke: 604
Hvala: 47
61 "Hvala" u 27 poruka
conica će postati "faca" uskoro
Pošaljite ICQ poruku za conica Pošaljite poruku preko MSN za conica Pošaljite poruku preko Skype™ za conica
Default

@MrSteel: naravno da znaci ovo sto si napisao iz iskustva. Evo konkretno zasto: sada je implementacija ovog dela realizovana u tabovima. u prvom tabu je odabir organizacije, u drugom podorganizacije, u trecem user grupe dok je u cetvrtom spisak odabranih korisnika i select box sa navedenim neodabranim korisnicima.
Bilo koji odabir u prva tri taba moze da tolerise sekund delay da se populise spisak i azurira select, posto cetvrti tab nije vidljiv vec treba da se klikne na njega, ali bilo kakva operacija u cetvrtom tabu bi zahtevala rad bez zastoja - konkretno, odcekiranje nekog korisnika bi zahtevalo da se on momentalno skine sa list i da se pojavi u selectu, dok bi odabir u selectu opet zahtevao njegovo momentalno ubacivanje na spisak.
__________________
HomeOfWeb | BLOG: (hrk)pljuc.com
conica je offline   Odgovorite uz citat
Odgovori


Alati teme
Način prikaza

Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
Obrada miliona slika nixa Programiranje 0 29. 07. 2010. 00:40
Otvaranje agencije.Dilema. Milance e-Business 25 08. 06. 2010. 08:57
Obrada gresaka prilikom unosa od strane posetioca Bojsi PHP 15 24. 08. 2009. 15:50
Obrada korisnickih gresaka Bojsi PHP 12 15. 10. 2008. 11:03
Laptop dilema [nq] Opušteno 17 04. 09. 2006. 20:30


Vreme je GMT +2. Trenutno vreme je 14:30.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.