Din sql-streng skal have denne opbygning, hvis du vil have flere genrer (jeg går ud fra, at du vil søge imellem to genrer her): genre1=... genre2=... sql="SELECT * FROM musik WHERE genre = '" & genre1 & "'" & " or genre='" & genre2 &"'"
Der er omkring 8 genrer, som man kan vælge via checkboxe. De genrer som er afkrydsede skal vises. Derfor tænkte jeg at man kunne smide de udvalgte genrer i den session:
session("genre_valg") = Request.form("genre1") & AND & Request.form("genre2") & AND & Request.form("genre3")....osv. Men hvordan??
kan jeg stadig beholde SQL-sætningen så:
sql="SELECT * FROM musik WHERE genre = '"&genre_valg&"'"
Det giver ikke mening at sætte and imellem Request.form("genre1") & AND & Request.form("genre2") Er det ikke sådan, at du vil have de poster, hvor genren er en af de markerede. Men så er det noget af form where genre='genre1' or genre='genre2' or genre='genre3' og så videre. genre1, genre2,... er så genrenavne, der findes i søjelen musik i databasetabellen musik.
Jeg løb ind i et andet problem. Ved ikke om du kan hjælpe med det også for 30 p. mere??
De checkbokse som man har afkrydset skal være checked på siden musik.asp også (den med sql-sætningen) Kan man gøre dette uden en session til hver genre?
Selv tak, glad for at kunne hjælpe. Dit nye problem: Jeg er ikke sikker på, jeg helt forstår, hvad du mener med en session til hver genre. Mener du en sessionsvariabel til hver genre?
Jo, det jeg mener er, at min tidligere kode kun gav mulighed for at vise alle poster inden for én genre. Navnet på genren lå derfor som den eneste i min session "genre_valg".
Derfor kunne jeg som vist her bruge en if sætning til at vise hvilken genre som var i session'en:
<option value="Ambient" <%if genre_valg="Ambient" then response.write("selected")%>>Ambient</option>
Som koden ser ud nu ligger der flere genrer i min session "genre_valg", hvordan kan jeg så vise på mine checkboxe, hvilke genrer der er valgt??
Du er nødt til at have dine ting splittet ud på det enkelte valg også. Den variable genre_valg er ok til at hjælpe med at få de rigtige ting hentet fra din database, når du får udført din sql-sætning.
Vil du udskrive en side hvor din form ovenfor er udfyldt med check-mærker i de relevante checkbokse? Start med at gemme dine request-data i en række variable. Ambient=Request.form("Ambient") Dance=Request.form("Dance") etc.... Nu har du hvad du skal bruge til både at opbygge din sql-sætning Du kan alle steder i din sql-streng statte request.form(...) med den tilsvarende variable.
Og du kan nu også let skrive checkmærker der hvor du har lyst. if Ambient="Ambient" then kode, som udskriver det du nu ønsker end if
Det er altid bedst med det samme at hente værdier request.form(...) ind i variable. Det er tungt for sytemet at skulle håndtere request.form(...) hele tiden.
Det var lige det der skulle til!... 1000 tak for hjælpen. Jeg må hellere lave nogle af mine andre sider om, hvor jeg har brugt request.form på samme måde. Når du siger det er sløvende.
Hvordan giver jeg flere point, når jeg allerede har givet dig én gang?
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.