שלח תשובה

זירת השאלות

738
צפיות
8
תשובות

בעיה asp

,‏ 23 במאי, 2008

כשאני מנסה להריץ את הדף זה כותב לי את השגיאה הבאה:
ADODB.Recordset error '800a0bcd'
Either BOF or EOF is True, or the current record has been deleted. Requested operation requires a current record.

/maccabi12345/paging_rec.asp, line 52

אני יודע מה השגיאה אומרת אבל אני לא מצליח לפתור את הבעיה ניסיתי ככה:


if rs.EOF Then response.redirect("cnisa.asp")


אבל זה לא מצליח אם למישהו יש רעיון אני ישמח

תגיות:

8 תשובות

  1. תראה בבקשה את הקוד הרלוונטי
    שמייצר את השגיאה.


    צוות WebMaster  

  2. pinathai הגיב:

    הנה הקוד

    <%
    set cn = server.CreateObject("ADODB.Connection")
    set rs = Server.CreateObject("ADODB.RecordSet")
    cn.Open Samples_DSN
    SQL = "select * from av where atar_id=" & atar_id

    PAGE = Request.QueryString("page")
    if PAGE = "" Then PAGE = 1
    NumOfRecInPage = 10

    rs.PageSize = NumOfRecInPage
    rs.CacheSize = rs.PageSize

    rs.Open SQL,cn,3,1

    NumOfRec = rs.RecordCount
    NumOfPages = rs.PageCount
    CurrentPage = PAGE
    rs.AbsolutePage = CurrentPage

    For i = 1 to NumOfRecInPage 'לעבור על הסט רשומות כמספר הרשומות שבדף אחד
    response.write"<tr bgcolor=white align=right onMouseOver=this.style.background='#ffff33' onMouseOut=this.style.background='#ffffff'><td height=30><font color=#1CA8C4 size=1>" & rs(5) & "</font></td>"
    response.write"<td width=50 height=30><font color=#1CA8C4 size=1>" & rs(2) & "</font></td>"
    response.write"<td width=100 height=30><font color=#1CA8C4 size=1>" & rs(4) & "</font></td>"
    response.write"<td width=350 height=30><font color='black'><a href=forum1.asp?id=" & rs(0) & "&atar_id=" & rs(6) & ">" & rs(1) & "</font></tr></td>"
        
        rs.MoveNext
        
    Next

    rs.Close
    set rs = nothing
    cn.Close
    Set cn = Nothing

    Response.Write "<TR><TH Height=40></TH></TR>"

    Pages = ""

    if CurrentPage > 1 Then
    Pages = Pages & " <A Href=?page=" & CurrentPage – 1 & "&numofrec=" & NumOfRecInPage & "><<</A> "
    End if

    For i = 1 to NumOfPages
    if i <> Cint(CurrentPage) Then
        Pages = Pages &  " |<A Href=?page=" & i & ">" & i & "</A>| "
    Else
        Pages = Pages &  " [" & i & "] "
    End if
    Next

    if Cint(CurrentPage) < Cint(NumOfPages) Then 'בדיקה אם יש צורך בקישור לדף הבא
    Pages = Pages & " <A Href=?page=" & CurrentPage + 1 & "&numofrec=" & NumOfRecInPage & ">>></A> "
    End if

    Response.Write "<TR><TH Colspan=4>" & Pages & ": דף נוכחי</TH></TR>"
    RecNum = ""

    %>
    <%

    set rs=server.createobject("adodb.recordset")
    sql="select * from atarim where atar_id=" & atar_id
    rs.open sql,hibur

    do until rs.eof
    reka=rs("reka")
    response.write"<body bgcolor=" & reka & ">"
    rs.movenext
    loop
    %>

  3. כל זה רלוונטי?
    תביא רק את הקטע קוד הבעייתי עצמו, ותגיד על איזה שורה בדיוק אתה מקבל את השגיאה.


    אלי ענתבי
    entry interactive
    http://www.entry.co.il

  4. pinathai הגיב:

    הנה


    <%
    set cn = server.CreateObject("ADODB.Connection")
    set rs = Server.CreateObject("ADODB.RecordSet")
    cn.Open Samples_DSN
    SQL = "select * from av where atar_id=" & atar_id

    PAGE = Request.QueryString("page")
    if PAGE = "" Then PAGE = 1
    NumOfRecInPage = 10

    rs.PageSize = NumOfRecInPage
    rs.CacheSize = rs.PageSize

    rs.Open SQL,cn,3,1

    NumOfRec = rs.RecordCount
    NumOfPages = rs.PageCount
    CurrentPage = PAGE
    rs.AbsolutePage = CurrentPage'על השורה הזאת אני מקבל את השגיאה

    For i = 1 to NumOfRecInPage 'לעבור על הסט רשומות כמספר הרשומות שבדף אחד
    response.write"<tr bgcolor=white align=right onMouseOver=this.style.background='#ffff33' onMouseOut=this.style.background='#ffffff'><td height=30><font color=#1CA8C4 size=1>" & rs(5) & "</font></td>"
    response.write"<td width=50 height=30><font color=#1CA8C4 size=1>" & rs(2) & "</font></td>"
    response.write"<td width=100 height=30><font color=#1CA8C4 size=1>" & rs(4) & "</font></td>"
    response.write"<td width=350 height=30><font color='black'><a href=forum1.asp?id=" & rs(0) & "&atar_id=" & rs(6) & ">" & rs(1) & "</font></tr></td>"
        
        rs.MoveNext
        
    Next

  5. אז הנה קיבלת את תשובה…
    תריץ בדיקה אם rs.EOF שווה true מיד אחרי הפתיחה של ה-rs


    אלי ענתבי
    entry interactive
    http://www.entry.co.il

  6. pinathai הגיב:

    לא עובד
    עשיתי ככה


    If rs.EOF = true Then response.redirect("cnisa.asp")

    וזה לא עובד

  7. שוב תיתן לנו לנחש?
    שוה תיתן לנו לנחשב איך כעת נראה הקוד שלך, מה השגיאה ועל איזה שורה היא חוזרת?…

    תעזור לנו לעזור לך, נדירים האנשים שמצליחים לנחש פיתרון בעיות.


    אלי ענתבי
    entry interactive
    http://www.entry.co.il

  8. pinathai הגיב:

    הנה


    <%
    set cn = server.CreateObject("ADODB.Connection")
    set rs = Server.CreateObject("ADODB.RecordSet")
    cn.Open Samples_DSN
    SQL = "select * from av where atar_id=" & atar_id

    PAGE = Request.QueryString("page")
    if PAGE = "" Then PAGE = 1
    NumOfRecInPage = 10

    rs.PageSize = NumOfRecInPage
    rs.CacheSize = rs.PageSize

    rs.Open SQL,cn,3,1
    If rs.EOF = true Then response.redirect("cnisa.asp")
    NumOfRec = rs.RecordCount
    NumOfPages = rs.PageCount
    CurrentPage = PAGE
    rs.AbsolutePage = CurrentPage'על השורה הזאת אני מקבל את השגיאה

    For i = 1 to NumOfRecInPage 'לעבור על הסט רשומות כמספר הרשומות שבדף אחד
    response.write"<tr bgcolor=white align=right onMouseOver=this.style.background='#ffff33' onMouseOut=this.style.background='#ffffff'><td height=30><font color=#1CA8C4 size=1>" & rs(5) & "</font></td>"
    response.write"<td width=50 height=30><font color=#1CA8C4 size=1>" & rs(2) & "</font></td>"
    response.write"<td width=100 height=30><font color=#1CA8C4 size=1>" & rs(4) & "</font></td>"
    response.write"<td width=350 height=30><font color='black'><a href=forum1.asp?id=" & rs(0) & "&atar_id=" & rs(6) & ">" & rs(1) & "</font></tr></td>"
        
        rs.MoveNext
        
    Next

שלח תשובה