Hej! testa istället: Hej! Har du inte glömt PageSize? Hej! Detta att jag fick felmeddelandet när jag körde på webbhotellet, har det alltså att göra med att webbhotellet inte stödjer just detta med recordcount eftersom det fungerade när jag körde det hela på min egen dator? Du måste tala om för recordset'et hur stora sidorna skall var. Räcker inte bara att deklarera en variabel intPageSize Gör du detta? Hej! KAn det bero på att du har andra data i databasen på servern? Har du gjort som jag föreslagit? Hur ser sidan ut nu? Hej! Jag har givetvis testat på data som jag är säker på finns i databasen på servern.1 träff visas ej, 2 eller fler visas
Har nyss bytt databas från Access till mysql och har då skrivit om en hel del av min asp / sql kod för att få det att fungera.
Jag har nu stött på ett mkt konstigt problem i en sökfunktion som jag har. Är nämligen så att om det endast finns EN träff så skrivs den INTE ut, utan istället mitt meddelande om att det inte finns någon träff. Om det finns två eller fler träffar skrivs de däremot ut. Är mycket tacksam för hjälp med detta. Jag får alltså inget felmeddelande men träffen skrivs ej ut.
sql = "select s.stugid, s.aktivera, s.ortid, o.ortid, o.ortnamn from Stugor as s inner join ort as o on o.ortid=s.ortid where o.ortnamn like '%"&ortnamn&"%' and s.Aktivera=-1 order by " & ordning
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = 3
rs.CursorType = 3
rs.ActiveConnection = stugdatabas
rs.Open sql
if rs.EOF then
Response.Write("Ingen träff")
else
rs.AbsolutePage = intPage
intTotalPages = rs.PageCount
end if
if ortnamn <> "" and not rs.eof OR intCounter >= intPageSize then
resultatet skrivs ut
end ifSv: 1 träff visas ej, 2 eller fler visas
if rs.recordcount < 1 then
response.write "inga poster"
else
do while not rs.eof
rs.movenext
loop
end ifSv: 1 träff visas ej, 2 eller fler visas
Tack för Ditt snabba svar!
Blev först jätteglad för det fungerade utmärkt på min dator. Men när jag laddade upp filen på mitt webbhotell och körde den fick jag följande felmeddelande på raden där jag skrivit in if rs.recordcount < 1 then:
Microsoft Cursor Engine fel '80004005'
Data provider or other service returned an E_FAIL status.
/resultat3.asp, line 55
Mvh LenaSv: 1 träff visas ej, 2 eller fler visas
<code>
sql = "SELECT s.stugid, s.aktivera, s.ortid, o.ortid, o.ortnamn" & vbCrLf & _
"FROM Stugor AS s LEFT JOIN ort AS o ON s.ortid = o.ortid" & vbCrLf & _
"WHERE o.ortnamn Like '%" & Replace(ortnamn, "'") & "%' and s.Aktivera = -1" & vbCrLf & _
"ORDER BY " & ordning
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = 3
rs.Open sql, stugdatabas, 3
If rs.EOF then
Response.Write("Ingen träff")
Else
rs.PageSize = intPageSize
rs.AbsolutePage = intPage
intTotalPages = rs.PageCount
Do
'Skriv ut post
rs.MoveNext
Loop
End If
rs.Close
Set rs = Nothing
</code>Sv: 1 träff visas ej, 2 eller fler visas
Nej det har jag högre upp på sidan:
intPageSize = 10
intPage = Request.QueryString("page")
If intPage = "" Then
intPage = 1
end ifSv: 1 träff visas ej, 2 eller fler visas
Är det isf något Ni tror/anser att man kan kräva av sitt webbhotell så att jag ska be dem göra någon ändring eller så?
Mvh LenaSv: 1 träff visas ej, 2 eller fler visas
<code>
rs.PageSize = intPageSize
</code>
Annars kan felet bero på att sidorna är en post stor.Sv: 1 träff visas ej, 2 eller fler visas
Tack så mkt! Det hade jag missat!
Nu fungerar det jättebra på min dator... MEN... när jag laddade upp det på webbhotellet får jag samma problem, 1 träff visas ej, 2 eller flera visas. Får dock inget felmeddelande den här gången.
Mvh LenaSv: 1 träff visas ej, 2 eller fler visas
Sv: 1 träff visas ej, 2 eller fler visas
Koden ser ut så här nu:
<code>
intPageSize = 10
intPage = Request.QueryString("page")
If intPage = "" Then
intPage = 1
end if
ortnamn = Request("ortnamn")
if ortnamn <> "" then
sql = "select s.stugid, s.aktivera, s.ortid, o.ortid, o.ortnamn from Stugor as s inner join ort as o on o.ortid=s.ortid where o.ortnamn like '%"&ortnamn&"%' and s.Aktivera=-1 order by " & ordning
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorLocation = 3
rs.Open sql, stugdatabas, 3
if rs.eof then
response.write("inga träffar")
else
rs.PageSize = intPageSize
rs.AbsolutePage = intPage
intTotalPages = rs.PageCount
'Navigationsrad skrivs ut här
do until rs.eof OR intCounter >= intPageSize
intCounter = intCounter + 1
' Första träffen skrivs ut
rs.movenext
if not rs.eof OR intCounter >= intPageSize then
' Andra träffen skrivs ut
intCounter = intCounter + 1
rs.movenext
end if
loop
' Navigationsrad skrivs ut här
end if
end if
</code>