[ CIIAPTAK @ 28.04.2004. 20:52 ] @
Na formi imam *file* komponentu preko koje korisnik treba da izabere fotografiju iz odredjenog direktorijuma ili njegovih poddirektorijuma. E sad, *file* komponenta ne moze da se podesi tako da se ogranici samo na odredjeni direktorijum i njegove poddirektorijume - ne postoji takav atribut. Zato sam smislio da u onchange event *file* komponente dodam funkciju koja ce da uporedi putanju izabranog fajla sa putanjom onog direktorijuma iz kojeg je predvidjeno da se biraju fajlovi, dakle hocu da uporedim ta dva stringa da bih skontao da li je korisnik izabrao fajl iz direktorijuma koji treba ili je svrljao okolo. U sustini, treba mi funkcija koja ce da provjeri da li se jedan string sadrzi unutar drugog stringa..

Evo ovako sam probao.. results bi trebao da bude -1 ako NE pronadje podudarnost, itd..


function searchstring(){
myString = new String("E:\php-test\photos\000041.jpg")
rExp = /php-test\photos/;

results = myString.search(rExp)
alert(results)
}



Ovo na prvi pogled radi.. Ali ima tu nekih zackoljica - javascript nesto radi sa ovim putanjama, izgleda da brise backslashes.. Uglavnom, kada umjesto E:\php-test\photos\000041.jpg stavim npr document.forms[0].file.value onda NE radi.. Isto tako ako vrijednost proslijedim u funkciju kao argument..




Je li se neko patio sa ovakvim stvarima, pa da mi prekrati muke?
[ noviKorisnik @ 28.04.2004. 21:16 ] @
"\" je escape karakter pa - ukoliko ti je potrebno da se nalazi u okviru nekog stringa kao redovni karakter - moraš ga duplirati: "\\".
[ CIIAPTAK @ 29.04.2004. 22:23 ] @
Jeste, stari moj, baš tu je bio problem..!!

Preko toga sam prelazio jer sam mislio da sam to vec provjerio, medjutim podešavao sam samo string koji se provjerava a na regularnom izrazu sam ostavljao neduplirano.. :-(

Sad sam sve udesio, sadržaj regularnog izraza, to jest putanja photo direktorijuma, se učitava iz baze gdje je zapisana, i samo se protjera kroz php-funkciju quotemeta() i dobije se taman sve kako treba.. IDEALNO..

Life is beautiful..