Tää pirulainen jumittaa mun servon...
bongaakos joku tuolta ilmiselvää bugia?
entä saiskos joku sen jopa toimimaan?
Eli subia kutsutaan sitten kun on tutkittu että onko domain vapaa, ja nyt sitten tarkistetaan että sopiiko se meille, eli vastaako niitä TLD -tyyppejä jotka me hyväksymme. oma TLD -listamme on erillisessä txt-filessä ylläpidon helpotukseksi (ja koodaajan kauhuksi). :D
Sub ValidateDomain
‘alustan muuttujat ja teen tuosta yhestä jo valmiiksi arrayn
Dim vStrDomain,vStrDomReverse,vDomCount,SerCreObjFSO,DomPicker,vDomainCheck,x
Dim aPosDomain
aPosDomain = Array()
‘tarkistettava domain tulee querystringillä
vStrDomain = Request.QueryString("domain")
‘käännän sen ympäri vertailun helpottamiseksi
vStrDomReverse = strReverse(vStrDomain)
vDomCount = CInt(0)
‘ lasken kuinka monta riviä on domainlistfilessä, johon on listatu kaikki sallitut domainit omille riveilleen
Set SerCreObjFSO = Server.CreateObject("Scripting.FileSystemObject")
Set DomPicker = SerCreObjFSO.OpenTextFile(Server.MapPath("domainlist.txt"),1)
Do While DomPicker.AtEndOfStream = False
vDomCount = vDomCount 1
Loop
Set DomPicker = Nothing
Set SerCreObjFSO = Nothing
‘teen arrayn jossa on yhtä monta alkiota kuin filessä rivejä
vDomCount = vDomCount - 1
ReDim aPosDomain(vDomCount)
vDomCount = CInt(0)
‘lätkin datan filestä juuri tehtyyn taulukkomuuttujaan…
Set SerCreObjFSO = Server.CreateObject("Scripting.FileSystemObject")
Set DomPicker = SerCreObjFSO.OpenTextFile(Server.MapPath("domainlist.txt"),1)
Do While DomPicker.AtEndOfStream = False
aPosDomain(vDomCount) = DomPicker.ReadLine
vDomCount = vDomCount 1
Loop
Set DomPicker = Nothing
Set SerCreObjFSO = Nothing
vDomCount = vDomCount - 1
DomainCheck = False
Sitten vaan vertaan ne perkeleet keskenään peräpäästä alkaen…
For x = 0 To vDomCount
vLenDom = Len(strReverse(aPosDomain(x)))
If Mid(vStrDomReverse,1,vLenDom) = strReverse(aPosDomain(x)) Then
vDomainCheck = True
End If
Next
If vDomainCheck = False Then
Response.Write "Invalid Domain"
End If
End Sub
vaikka uskonkin että aika hiljasta on, niin piti silti kuitenkin kysyä... kthxbye 8)
Propellihatuille VBScript-pähkinä (domainin tarkistus)
8
765
Vastaukset
- se sama
vika kommentti näköjään jostain syystä ilman lainausta...
muutenkin tuo koodi nyt tuli tuohon vähän miten sattui näköjään, mutta koittakaa saada selvä... - miten olisi
Do While DomPicker.AtEndOfStream = False
vDomCount = vDomCount 1
Loop
mikä tässä pysäyttää laskemisen?- I Am AtEndOfStream
Nih, eikös tuossa loopissa se AtEndOfStream ole aina false....varmaan servon processorin kuorma kohtuu suuri kun ajat tota :)
- alkuper.
se pysäyttää sen laskemisen, että txt-filessä loppuu rivit :)
(testattu, ja toimiva)
http://www.w3schools.com/asp/showasp.asp?filename=demo_readlines
Kiitos molmemille vastaamaan vaivautuneille, sain koodin toimimaan :)
ekaan luuppiin kun tekee haamumuuttujan johon joka rivin arvo tallennetaan niin se toimii.
Do While DomPicker.AtEndOfStream True
vNull = DomPicker.ReadLine
vDomCount = vDomCount 1
Loop- TarjaHalonen
Juh, siis ihan tiedoksi että miksi se "haamumuuttuja" tarvitaan. Auttaa ehkä myöhemmin kun käsittelet tiedostoja...
jos looppaat tiedstoa läpi tyyliin
While EndOfFile True
Do stuff
End While
Niin oletuksena siis tuo endoffile on ikuisesti false, koska tiedoston pointteri (kohta josta tiedostoa luetaan) on aina tiedoston alussa, koska se ei itsekseen liiku mihinkään. Ja tuo EndOfFile testaa ainoastaan pointterin sijaintia, ei muuta.
Erilaiset tiedotston lukemiseen tarkoitetut methodit kuten ReadLine kuitenkin siirtävät sen pontterin aina tietyn määrän merkkejä eteenpäin, jolloin se pointteri ennen pitkää tulee tiedoston loppuun ja saa aikaiseksi sen, että EndOfFile saa arvon true.
Elikkäs periaatteessa ei tarvittaisi edes tuota haamumuuttujaa, riittää kun laitat sen metodin kutsun siihen... esim.
Do While DomPicker.AtEndOfStream True
DomPicker.ReadLine
vDomCount = vDomCount 1
Loop
- p7h
http://www.seattlerobotics.org/guide/servos.html
Niin ja nimi on sama suomeksi. Ihan tiedoksi...- ulalla...
ja mitenhän toi liittyi aiheeseen?
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Persujen vaalilupaus oli euron bensa
Nyt puhutaan jo kolmen euron bensasta. Kyseessä on Suomen historian törkein vaalipetos.1332299Vain vasemmistohallitus saa minut menemään töihin
Änkyräkapitalistien sortaessa kansaa en laita rikkaakaan ristiin. Elän mielummin Kelan tuilla, ja jos niitä leikataan, n622227Maataloustuet perittävä korkojen kera takaisin
Yrittäjiltä jotka ovat myyneet tuotantoaan ulkomaille. Veronmaksajan kustantama tuki on tarkoitettu elintarvikkeiden hi501895EK: Suomi tarvitsee vuosittain 45 000 maahanmuuttajaa
Senpä takia Riikkakin laulaa sen lauluja kenen leipää syö. Viime vuonnahan Suomeen muutti 50 tuhatta ulkomaalaista. htt661586Topi osti Askon
Hieno mies. Pelastaa työpaikkoja. Kiitokset myös emännälleen, joka pitää isännän virkeänä. https://www.is.fi/taloussan971451- 941427
Oliko se oikeasti epäselvää
sinulle että olin ihastunut sinuun? (Ymmärrän että siitä on aikaa, eikä voi olettaa että kaikkea muistaisi tai että men1111299Uskomatonta touhua!
Ei olis uskonut että kateus yrittäjää kohtaan menee noin pitkälle. TTP:ssa irrotettu sähköjohto jäätelöaltaasta. Kaikki311190Kastaa ja upottaa on eri sanat
Kastaa ja upottaa on eri sanat ja niillä on eri merkitys. Eikä Jeesusta haudattu upottamalla maahan kaivettuun kuoppaan2191171- 691040