Avatar billede wraber Praktikant
23. oktober 2003 - 17:56 Der er 7 kommentarer

Fejl i connection med txt fil og while - wend løkke.

hvad er der galt med denne kode... jeg får hele tiden iis serveren på min pc til at gå ned... og det hjælper ikke at genstarte serveren, jeg skal genstarte hele pcen.
--------------
    Set fso = CreateObject("Scripting.FileSystemObject")
    filespec = Server.Mappath("files/test.txt")
    Set f = fso.OpenTextFile(filespec,1)
    Response.write f.ReadLine
   
        while not stream.AtEndOfStream
   
            word = 1
            i = 1
            j = 1
            line = stream.ReadLine
   
            while j <> 0
                j = inStr(i, line, chr(9), vbTextCompare)
           
                if j > 0 then
                    s = Mid(line, i, j-i)
                   
                        select case word
                            case 2
                                varenr_get = s
                            case 3
                                name = s
                            case 6
                                buy_price = s
                            case 7
                                stock = s
                        end select
                   

                    i = j +1
                    word = word +1
                end if
            wend
        '    if varenr_get = varenr then
        '        sql = "insert into products (prod_varenr,prod_name,prod_buy_price,prod_stock,prod_distributor,prod_subcat_id) values ('"&varenr&"','"&name&"','"&buy_price&"','"&stock&"','"&distributor&"','"&subcat_id&"')"
        '        conn.execute (sql)
        '        response.redirect "infodata.asp"
        '        mode = 2
        '        break
        '    end if
        wend
---------------
please help
wraber
Avatar billede tchami Nybegynder
23. oktober 2003 - 18:30 #1
Du er sikker på at j ikke altid er forskellig fra 0 ikke? Ellers kører dit inderste loop bare rundt og rundt og rundt....
Avatar billede wraber Praktikant
23. oktober 2003 - 18:33 #2
hmm... jeg mener at

j = inStr(i, line, chr(9), vbTextCompare)
giver resultatet j = 0 når linjen slutter, men er ikke helt sikker...
Avatar billede wraber Praktikant
23. oktober 2003 - 18:36 #3
Meningen med denne kode er at dele nogle tekststrenge op efter tabulator (chr(9)), og så smide det ind i en database.. (det er udkommenteret i dette stykke kode)
Avatar billede tchami Nybegynder
23. oktober 2003 - 18:37 #4
Nu sidder jeg lige og er i fuld gang med noget andet, så kan ikke lige teste det, men det ville virke logisk hvis det var et uendeligt loop der fik din IIS til at gå ned.
Avatar billede wraber Praktikant
23. oktober 2003 - 18:39 #5
ja det mener jeg også, men så plejer jeg at gå ind under administration, og stoppe iis'en og starte den igen, hvilket normalt hjælper. dette hjælper bare ikke nu! Jeg forstår det ikke.
Avatar billede wraber Praktikant
23. oktober 2003 - 18:50 #6
Jeg tror faktisk det er denne linje serveren brokker sig over
f = fso.OpenTextFile(filespec,1)
hvorfor????
Avatar billede tchami Nybegynder
23. oktober 2003 - 19:06 #7
Hmm, kanske at stien ikke er korrekt.

Prøv en:
Response.Write filespec
Response.End

Lige før denne linie:
Set f = fso.OpenTextFile(filespec,1)

Hvis stien viser sig at være korrekt så prøv at udskifte
Set f = fso.OpenTextFile(filespec,1)
med
Set f = fso.OpenTextFile(filespec,ForReading,False,TristateUseDefault)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester