Hej,
försöker lära mig ASP....
Just nu försöker jag med en adressbok, där man kan välja vilken bokstav som skall visas. Men jag får inte det hela att fungera!! Det enda som händer är att html-koden visas men inga informationer från databasen.
Vilka fel hittar ni i nedanstående?
<html>
<!-- #include virtual="/databas/adovbs.inc" -->
<% Set MinCon = Server.CreateObject("ADODB.Connection")
MinCon.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databas\adressbok.mdb"
Set rs = Server.CreateObject("ADODB.Recordset")
If Request.QueryString("ordning") = "A" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'A*'"
ElseIf Request.QueryString("ordning") = "B" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'B*'"
ElseIf Request.QueryString("ordning") = "C" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'C*'"
ElseIf Request.QueryString("ordning") = "G" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'G*'"
End If
rs.Open Hamta, MinCon, adOpenStatic, adLockOptimistic %>
Hittade följande personer:<p>
<ul>
<% Do Until rs.EOF %>
<li><% =rs("Fornamn") %> <b><% =rs("Efternamn") %></b><br>
<% =rs("Adress") %><hr noshade size="1">
<% rs.MoveNext
Loop
rs.Close
MinCon.Close %>
</ul>
</html>
Bifogar hela mappen som har addressen: C:\Inetpub\wwwroot\databas
<html>
<!-- #include virtual="/databas/adovbs.inc" -->
<% Set MinCon = Server.CreateObject("ADODB.Connection")
MinCon.Open "driver={Microsoft Access Driver (*.mdb)};dbq=c:\inetpub\wwwroot\databas\adressbok.mdb"
Set rs = Server.CreateObject("ADODB.Recordset")
If Request.QueryString("ordning") = "A" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'A[b]%[/b]'"
ElseIf Request.QueryString("ordning") = "B" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'B[b]%[/b]'"
ElseIf Request.QueryString("ordning") = "C" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'C[b]%[/b]'"
ElseIf Request.QueryString("ordning") = "G" Then
Hamta = "SELECT * FROM adressbok WHERE Efternamn LIKE 'G[b]%[/b]'"
End If
rs.Open Hamta, MinCon, adOpenStatic, adLockOptimistic %>
Hittade följande personer:<p>
<ul>
<% Do Until rs.EOF %>
<li><% =rs("Fornamn") %> <b><% =rs("Efternamn") %></b><br>
<% =rs("Adress") %><hr noshade size="1">
<% rs.MoveNext
Loop
rs.Close
MinCon.Close %>
</ul>
</html>
Solbulle: Elegant lösning du hade som fungerar. Men:
fördelar/nackdelar med din lösning?
Är det sant att SQL sturntar i mellanslag?
rs.Open Hamta, MinCon, 3, 3
Vad betyder de två 3 i koden?Sebbe: även din läsning fungerar bra. tack. Blir bara lite förvirrad, för Ronne på s223 använder * för just såna tillfällen.
Slutligen ngra "mellanslagsfrågor":
i
<% =rs("Adress") %>
vad händer om jag skulle skriva : <% = rs("Adress") %>
vad händer om jag skulle skriva: <% = rs("Adress") %>dvs mellansla mellan % och )
3:orna bestämmer hur recordsetet ska öppnas, vad du kan göra med reocordsetet.
Som du nu öppnar det med 3,3 så är det det sämsta sättet att öppna det på rent prestandamässigt och i ditt fall ser jag inte att du ska lägga till något nytt till db utan bara hämta och visa.
Då räcker det med 0,1 .... vill man bygga till med paging krävs dock att man öppnar det 1,3
Som du nu öppnar det med 3,3 så är det det sämsta sättet att öppna det på rent prestandamässigt och i ditt fall ser jag inte att du ska lägga till något nytt till db utan bara hämta och visa.
Då räcker det med 0,1 ....
Vi lär oss hela tiden :)
Hur som helst, bara att slippainkludera adobvs.inc är väl en "vinst" i sig?
267 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9