Avatar billede puppetmaster Nybegynder
02. juli 2002 - 11:14 Der er 1 løsning

Fra spaghetti-kode til funktioner

Ideer til at omdanne nedenstående spaghetti-kode til brugbare funktioner.

<%
  Session.LCID = 1030
  soegeord1 = TRIM(Request("soegeord"))
  soegeord2 = Split(soegeord1, " ")
  taeller = 0
  Dim Item
  For Each Item In Request.Form("multiple")
    Response.Write "Artikler i kategorien <strong>" & Item & "</strong></font><table width='100%' border=0 cellspacing=0 cellpadding=2>"
  For Each soegeord In soegeord2
    soegeord = Trim(soegeord)
  If soegeord <> "" Then
  Set Con = Server.CreateObject("ADODB.Connection")
  Con.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=C:\database.mdb"
    SQLtemp="SELECT Artikler.artikler_id, Artikler.opdateret_d, Artikler.titel, Artikler.resume FROM Artikler WHERE beskrivelse LIKE '"
    SQLtemp=SQLtemp & "%" & soegeord & "%" & "' AND  kategori LIKE '"
    SQLtemp=SQLtemp & "%" & Item & "%" & "' OR titel LIKE '"
    SQLtemp=SQLtemp & "%" & soegeord & "%" & "'AND  kategori LIKE '"
    SQLtemp=SQLtemp & "%" & Item & "%" & "' OR resume LIKE '"
    SQLtemp=SQLtemp & "%" & soegeord & "%" & "' AND  kategori LIKE '"
    SQLtemp=SQLtemp & "%" & Item & "%" & "' OR hardware_id LIKE '"
    SQLtemp=SQLtemp & "%" & soegeord & "%" & "' AND  kategori LIKE '"
    SQLtemp=SQLtemp & "%" & Item & "%" & "' ORDER BY opdateret_d DESC"
    Set RS = Con.Execute( SQLtemp )
    If RS.EOF Then
      '
    Else
      taeller = taeller + 1
      While Not RS.EOF
        Response.Write "<tr><td><ul><li><font face='Times New Roman' size='3'><a href='visartikel.asp?artikler_id="
        Response.Write RS("artikler_id") & "'>" & RS("titel") & "</a> " & RS("opdateret_d") & "<face='Times New Roman' size='2'><br>" & RS("resume")
        RS.MoveNext
      WEND 
    End If
    If taeller = 0 Then
      Response.Write("Der blev desværre ikke fundet nogle artikler indeholdende søgeordet <font color='#FF0000'>"& soegeord & "</font><br>")
    End If
  End If
  Next
    Response.Write "</ul></li></td></tr></table>"
  Next
  Set Con = Server.CreateObject("ADODB.Connection")
  Con.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=C:\database.mdb"
  SQL="SELECT Artikler.artikler_id, Artikler.opdateret_d, Artikler.titel, Artikler.resume FROM Artikler ORDER BY opdateret_d DESC"
  Set RS = Con.Execute( SQL )
  i = 0
  If soegeord1 = "" Then
    Response.Write "<font face='Times New Roman' size='3'>De 10 nyeste artikler</font><table width='100%' border=0 cellspacing=0 cellpadding=2>"
    While Not RS.EOF AND i < 10
      Response.Write "<tr><td><ul><li><font face='Times New Roman' size='3'>"
      Response.write "<a href='visartikel.asp?artikler_id="
      Response.Write RS("artikler_id")
      Response.Write "'>"
      Response.Write RS("titel")
      Response.Write "</a> "
      Response.Write RS("opdateret_d")
      Response.Write "<face='Times New Roman' size='2'><br>"
      Response.Write RS("resume")
      RS.MoveNext
      i = i + 1
    WEND 
    Response.Write "</li></ul></td></tr></table>"
  End If
%>
Avatar billede puppetmaster Nybegynder
04. juli 2002 - 14:39 #1
Lukker...
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