Ga naar inhoud

ASP Button


Aanbevolen berichten

Hallo allemaal, Ik wil graag middels te klikken op een soort Hyperlink een bepaalde Query activeren. Mijn aspcode op de pagine ziet er als volgt uit: <% set conn=Server.CreateObject("ADODB.Connection") conn.Open "Devotion" set rs = Server.CreateObject("ADODB.recordset") rs.Open "Select Titel from Nummers Where GenreID=16", conn %> <table border="0" width="50%"> <%do until rs.EOF%> <tr> <%for each x in rs.Fields%> <td><%Response.Write(x.value)%></td> <%next rs.MoveNext%> </tr> <%loop rs.close conn.close %> </table> Nu wordt deze code direct uitgevoerd wanneer de pagina geopend wordt, maar dat is nou net niet de bedoeling. Ik meerdere queries uit kunnen voeren door te klikken op de bijbehorende "tekstlink". Weet iemand hoe ik voor elkaar krijg?? Bij voorbaat dank. Groetjes, Eric.
Link naar reactie
De code ziet er op zich goed uit, maar in deze vorm wordt de inhoud idd meteen bij het laden van de pagina getoond. Waar wil je de tabel precies tonen? In een frame of een nieuw venster? Ik zou de code gewoon in een apart ASP-bestand plaatsen en die via de hyperlink aanroepen, zodat de pagina (of frame) pas getoond wordt, zodra je op de link klikt.
Link naar reactie
[quote:a4a343c2a9="JurgenvW"]Gebruik bijvoorbeeld cmd in plaats van v. Programmeer-technisch is dat wat overzichtelijker ;)[/quote:a4a343c2a9] Oh, is dat zo? Ik zie de overzichtelijkheid niet echt toe- of afnemen, maar dat ligt waarschijnlijk aan mij. Als je zou beweren dat het gebruik van een variabele met maar 1 letter onoverzichtelijk vindt dan kan ik me daar meer in vinden. Mijn eerste associatie bij een variabele met de naam [i:a4a343c2a9]cmd[/i:a4a343c2a9] is overigens een command object, dus dat maakt het ook niet overzichtelijker wat mij betreft ;)
Link naar reactie
Oke, misschien was cmd niet een geschikte keuze (ik bedoelde het overigens als command(o), vanwege het commando 'uitvoeren'). Het gaat mij erom dat er onderscheid gemaakt wordt tussen de verschillende variabelen/parameters. De v die je als parameter aan de url meegeeft is duidelijk een andere v dan de v die je als variabele definieert (Dim v), vandaar.
Link naar reactie
Die v was inderdaad een afkorting van [b:d4b2c93460]v[/b:d4b2c93460]ariabele, ik ga ervanuit dat iedereen zelf andere benamingen kiest ... maw. het was slechts een voorbeeld. Zelf gebruik ik een combo van type en naam -veelgebruikte methode-. Dus strAdres om aan te geven dat het om een string met de naam Adres gaat. En intLeeftijd voor de variabele Leeftijd met type integer. Vooral handig als je programmeertalen gebruikt ipv scripting, waar datatype van groter belang is. Op het moment dat je variabelen via je HTTP header doorpompt is het toch altijd een string die je dan weer zelf moet verbouwen tot de gewenste datatype. Maar goed, vraag me af of Eric er wat aan heeft gehad ...
Link naar reactie
Hoi allemaal, Fijn dat jullie mij proberen te helpen. Ik heb een dropdown menu gemaakt waarin ik een ID selecteer waarna ik op een knop om de bijbehorende gegevens op te halen uit en Access database. De code ziet er zo uit: Dim cnnDevDB Dim rstGenre, rstNummers Dim iRequestedID ' basis controle en leegmaken van de input box iRequestedID = Trim(Request.QueryString("GenreID")) iRequestedID = Replace(iRequestedID, "'", "''") If IsNumeric(iRequestedID) Then iRequestedID = CInt(iRequestedID) Else iRequestedID = 0 End If %> <form action="Reportoire_3.asp" method="get"> <p> <% ' Create ADO data connection object Set cnnDevDB = Server.CreateObject("ADODB.Connection") 'Open data connection - Use this line to use Access cnnDevDB.Open "DBQ=" & Server.MapPath("database/Devotion.mdb") & ";" _ & "Driver={Microsoft Access Driver (*.mdb)};", "", "" ' Create and open recordset object using existing connection Set rstGenre = Server.CreateObject("ADODB.Recordset") rstGenre.Open "SELECT * FROM Genre ORDER BY Genre", cnnDevDB ' Het drop down menu wordt gebouwd met Genre soorten If Not rstGenre.EOF Then rstGenre.MoveFirst %> <select name="GenreID"> <option selected></option> <% ' Loop through names Do While Not rstGenre.EOF Response.Write "<option value=""" Response.Write rstGenre.Fields("GenreID") Response.Write """" If rstGenre.Fields("GenreID") = CInt(iRequestedID) Then Response.Write "selected=""true""" End If Response.Write ">" Response.Write Trim(rstGenre.Fields("Genre")) Response.Write "</option>" & vbCrLf ' Move to next record rstGenre.MoveNext Loop %> </select> <input name="submit" type="submit" value="Laat nummers zien" /> <% End If ' Close ADO objects we're finished with and free DB variables rstGenre.Close Set rstGenre = Nothing ' If a request for a specific id comes in, then build table If iRequestedID <> 0 Then Set rstNummers = Server.CreateObject("ADODB.Recordset") rstNummers.Open "SELECT Titel, Artiest FROM Nummers WHERE GenreID = " & iRequestedID & " ORDER BY Titel", cnnDevDB Else Set rstNummers = Server.CreateObject("ADODB.Recordset") rstNummers.Open "SELECT Titel, Artiest FROM Nummers", cnnDevDB %> <p>& <table border="1" width="75%"> <tr><td bordercolor="#FFFF00"><b>Titel</b></td><td bordercolor="#FFFF00"><b>Artiest</b></td></tr> <tr><td height="15"></td></tr> <%do until rstNummers.EOF%><tr> <%for each x in rstNummers.Fields%><td> <%Response.Write(x.value)%></td> <%next rstNummers.MoveNext%></tr> <% loop rstNummers.close set rstNummers = Nothing 'cnnDevDB.close %></table> <% End If ' Close ADO objects we're finished with and free DB variables cnnDevDB.Close Set cnnDevDB = Nothing %></p> </form> In ieder geval ben ik hier uit. Bedankt voor jullie hulp. Kijk ook eens hier: http://forum.computertotaal.nl/phpBB/viewtopic.php?t=90969 Misschien dat jullie me hiermee kunnen helpen? Gr. Eric
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...