Avatar billede carparknorth Nybegynder
24. juni 2003 - 21:59 Der er 14 kommentarer og
1 løsning

Kunstner/Album Søgemaskine i ASP

Hejsa.

Jeg skal i gang med at lave en rimelig avanceret søgemaskine. Det er et site hvor man skal søge efter en kunstner, der har lavet en cd.

Jeg skal lave følgende:

Man søger på et navn. Hvis der er mere end en post i databasen, der har det navn man søger efter, skal der kun vises et navn på søge siden, men samtidig skal der vises hvor mange cd'er, denne kunstner har lavet.

Jeg ved sgu ikke helt hvordan jeg skal gå i gang med det.
Avatar billede netro Nybegynder
24. juni 2003 - 22:04 #1
Ligger det hele i samme tabel, eller har du (på korrekt vis) en tabel med kunstnere og en med albums og kunstnerens ID?
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:08 #2
nej, det jeg desværre ikke. Det er en database med over 50.000 kunstnere jeg og min kammerat har fået udleveret fra et firma. Desværre ligger det hele i en tabel.

tblCder:
ID,Kunstner,Album,Genre
Avatar billede netro Nybegynder
24. juni 2003 - 22:14 #3
Det firma kunne vist trænge til at få opfrisket læren om korrekt databasestruktur.

Er det noget, du kunne tænke dig at lave om på, eller skal vi holde os til den nuværende struktur?
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:15 #4
jeg tror bare vi holder os til det nuværende design. ;-)
Avatar billede netro Nybegynder
24. juni 2003 - 22:20 #5
Set rs = Conn.Execute("Select Album, Genre From tblCder Where Kunstner = '" & Soegeord & "'")

If Not rs.EOF Then
  Response.Write Soegeord " har udgivet følgende albums:<br><br>"
  While Not rs.EOF
      Response.Write rs("Album") & " (" & rs("Genre") & ")<br>"
      rs.MoveNext
  Wend
Else
  Response.Write "Ingen kunstnere matchede søgeordet!"
End If
Avatar billede netro Nybegynder
24. juni 2003 - 22:22 #6
Så får du f.eks. følgende output:


Céline Dion har udgivet følgende albums:

All The Way... A Decade Of Song (Pop)
These Are Special Times (Christmas)

Osv. osv...
Avatar billede netro Nybegynder
24. juni 2003 - 22:23 #7
Der mangler lige en & efter:
Response.Write Soegeord
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:25 #8
Det ser rigtigt nok ud. Kan jeg få dig til at lave en kode til følgende:

Dizzy Mizz Lizzy (2 cd'er)
Miles Davis (37 cd'er)

Det var lidt på den måde mit out put skulle være. Genren skal ikke oplyses på søgesiden.
Avatar billede netro Nybegynder
24. juni 2003 - 22:30 #9
Du vil liste samtlige kunstnere og opskrive, hvor mange værker hver enkelt har lavet?
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:32 #10
nemlig... hvis man søger på dizzy mizz lizzy skal outputtet være:

Dizzy Mizz Lizzy (2 cd'er)

beklager jeg ikke fik beskrevet problemet ordentligt tidligere.
Avatar billede netro Nybegynder
24. juni 2003 - 22:34 #11
Det er vist bare mig, der har for travlt...


Set rs = Conn.Execute("Select Count(Kunstner) As Antal, Kunstner From tblCder Where Kunstner = '" & Soegeord & "' Group By Kunstner Order By Kunstner")

If Not rs.EOF Then
  While Not rs.EOF
      Response.Write rs("Kunstner") & " (" & rs("Antal") & " cd'er)<br>"
      rs.MoveNext
  Wend
Else
  Response.Write "Ingen kunstnere matchede søgeordet!"
End If
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:39 #12
det virker rigtig lækkert. læg et svar, så får du point. lige en sidste ting, med den sql-sætning du laver der skal søgeordet være præcist det. hvordan er det LIKE fungerer?
Avatar billede netro Nybegynder
24. juni 2003 - 22:49 #13
Således...:

Set rs = Conn.Execute("Select Count(Kunstner) As Antal, Kunstner From tblCder Where Kunstner Like '%" & Soegeord & "%' Group By Kunstner Order By Kunstner")

Med % angiver du, om teksten skal matche enten starten eller slutningen af søgeordet eller ingen af delene.

%Blabla - matcher ikke nødvendigvis starten (kun slutningen)
Blabla% - matcher ikke nødvendigvis slutningen (kun starten)
%Blabla% - matcher ikke nødvendigvis hverken starten eller slutningen
Avatar billede carparknorth Nybegynder
24. juni 2003 - 22:49 #14
takker 1000 gange. du er for sej!
Avatar billede netro Nybegynder
24. juni 2003 - 22:52 #15
Selv tak ;)
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