Avatar billede lightbrain Nybegynder
14. juni 2002 - 20:59 Der er 6 kommentarer og
1 løsning

Simpel udvidelse af script

Hejsa

Hvor svært kan det egentligt wææære?!?

Jeg har en submit-side, hvor der i feltet "aendret" sendes en streng (f.eks. 65,25,25,36) som er værdier for markerede "artikelnr".

Nu mangler jeg bare at få udvidet nedenstående kode, alstå ved at få koblet nogle "emnenr" på "artikelnr" f.eks. 65(1),25(3),36(2) eller 65-1,25-3,36-2 eller noget helt 3. Men hvordan gør man lige det uden at lave en masse skod-kode? ;)

Det skal lige siges, at jeg ikke har låst mig fast på en bestemt løsning, så hvis du har en bedre løsning, så kom endelig med den. Jeg kan også hurtigt ændre min anden kode, hvis det ville være mere hensigtsmæssigt med endnu et submit-felt eller andet.


    if Request.form("valg") = "ArrangerArtikel" then
   
        Dim aendret, MyArray, bound, i
        MyString = Request.form("aendret")
        MyArray = Split(MyString, ",", -1, 1)
       
        bound = ubound(myarray)
       
        for i = lbound(myarray) to ubound(myarray)
           
            strSQL = "select * from ARTIKLER WHERE ARTIKELNR = " & MyArray(i)
            set rs = Conn.execute(strSQL)
            if rs.EOF then
                  status = "En eller flere af artiklerne er IKKE blevet arrangeret, da den eller de ikke i forvejen eksisterede!"
            else
                strSQL = "UPDATE ARTIKLER set emnenr = '" ???????? "' WHERE artikelnr = " & MyArray(i)
                set rs = Conn.execute(strSQL)
                status = "Artiklerne er nu blevet arrangeret!"
            end if
       
        next
    end if
Avatar billede eagleeye Praktikant
14. juni 2002 - 21:19 #1
hvis du har en streng som denne: 65-1,25-3,36-2  og du splitter på , så får du 3 del strenge:
65-1
25-3
36-2

Så du er nød til at spiltte en gang til ved -

artikelEmne = Split(MyArray(i), "-")

så bliver:
artikelEmne(0) = Artikel nummer
artikelEmne(1) = Emne nummer
Avatar billede lightbrain Nybegynder
14. juni 2002 - 21:23 #2
Ja, det er klart, men vil du så lave en for-lykke inde i en for-lykke, eller kan det hele ordnes inde i en for-lykke, og i så fald hvordan? Kan du implemtere det for mig?
Avatar billede eagleeye Praktikant
14. juni 2002 - 21:32 #3
det kommer and på om der kan være flere emneID efter 25-3-4-6-7 ?? så skal det lavet i et par loops ville jeg tro.


Her er den så den kan tage en streng som: 65-1,25-3,36-2

Dim aendret, MyArray, bound, i, artikelEmne
MyString = Request.form("aendret")

MyArray = Split(MyString, ",", -1, 1)
       
for i = lbound(myarray) to ubound(myarray)
  artikelEmne = Split(MyArray(i), "-")

  strSQL = "select * from ARTIKLER WHERE ARTIKELNR = " & artikelEmne(0)
  set rs = Conn.execute(strSQL)
  if rs.EOF then
    status = "En eller flere af artiklerne er IKKE blevet arrangeret, da den eller de ikke i forvejen eksisterede!"
  else
    strSQL = "UPDATE ARTIKLER set emnenr = '" & artikelEmne(1) & "' WHERE artikelnr = " & artikelEmne(0)
    Conn.execute(strSQL)
    status = "Artiklerne er nu blevet arrangeret!"
  end if
next
Avatar billede lightbrain Nybegynder
14. juni 2002 - 21:42 #4
Hvorfor har du fjernet tælleren "i" ved f.eks. ".... ARTIKELNR = " & artikelEmne(0)"? Giver det ikke problemer, for kommer alle artiklernes emnenr derved ikke til at være lig med den første artikels emnenr? 65=1 25=1 36=1

>...om der kan være flere emneID
Det skal de ikke.
Avatar billede eagleeye Praktikant
14. juni 2002 - 21:52 #5
Artilkel nummer vil altid være i den førte artikelEmne altså artikelEmne(0).

Det førte inde i for sætningen er jo:
  artikelEmne = Split(MyArray(i), "-")

MyArray(i) er så første gang 65-1 anden gang 25-3 sidste gang 36-2
Så der er afhængigheden til i..
Avatar billede lightbrain Nybegynder
14. juni 2002 - 22:03 #6
Det virker! Mange, mange tak for hjælpen! :-)
Avatar billede lightbrain Nybegynder
15. juni 2002 - 14:57 #7
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