Avatar billede jmc Nybegynder
04. juni 2002 - 13:57 Der er 19 kommentarer og
1 løsning

opdatering af records

Jeg søger lidt hjælp til koden her.

Jeg skal opdatere en tabel som har følgende udseende.
visiterID ; side_id ; visits

Jeg vil gemme hver gang en bruger klikker på et link (side_id) men på max 10 records pr. bruger, hvor jeg vil opdatere den side der er besøgt mindst (den skal overskrives i recorden).

Mit problem er at oprette de 10 records ved første besøg + hvordan jeg skal opdatere den record med siden som er mindst besøgt af kunde.

Spørgsmål
Hvordan gemmer jeg en query oven på record som er mindst i antaltvisits? (jeg kender visiterID)


Jeg har forsøgt med noget kode men kan ikke få det til at virke.

<%' *** Opdater VISITOR TABEL
    visiter_id = request.cookies("sitevisit")
    strvisit = (rs_visiter_menu.Fields.Item("side_id").Value)
   
    if stronline = "" Then
stronline = 0
End If
   
strSQL = "Update querys set visits = '" & replace(strvisit,"'","''") & "' where visiter_id=" & visiter_id & " "
   
    response.write strSQL
    'adoCn.Execute strSQL

    %>


        <% ' *** Cookie sættes hvis første besøg
        'if request.cookies("sitevisit") <> "" then %>
        <% 'else ' der har ikke været besøgt før%>
        <% strSQL_V = "SELECT Max(querys.visiter_id) FROM querys"
        response.write "dette er nummer"&strSQL_V
        '=(rs_visiter_menu.Fields.Item("visits").Value)%>
        <%'end if%>


Jeg søger hjælp til at oprette de 10 records og til at gemme på max visits
Avatar billede jmc Nybegynder
04. juni 2002 - 16:59 #1
Jeg er kommet lidt videre men det er ikke nemt:

fejlen:
Object doesn't support this property or method: 'Execute'


<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = '" & replace(v_acum_id,"'","''") & "' where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
SKER HER >>>    rs_visiter_menu.Execute strSQL

    %>


mit rs ser sådan ud:

<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>

ER DER NOGLE SOM KAN HJÆLPE HER?
Avatar billede medions Nybegynder
04. juni 2002 - 17:06 #2
<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = '" & replace(v_acum_id,"'","''") & "' where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
    rs_visiter_menu.Execute(strSQL)

    %>


mit rs ser sådan ud:

<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>

//>Rune
Avatar billede medions Nybegynder
04. juni 2002 - 17:09 #3
DOH! *G*
<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>
<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = '" & replace(v_acum_id,"'","''") & "' where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
    rs_visiter_menu.Execute(strSQL)

    %>

Sæt dit rs, øverst! :-) -det er jo ikke åbnet endnu!
//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 17:09 #4
stadigt:
Object doesn't support this property or method: 'Execute'

men er  rs_visiter_menu.Execute den rigtige måde at skrive det på?
Avatar billede jmc Nybegynder
04. juni 2002 - 17:10 #5
hele udskriften:
Update querys set visits = '4' where visiter_id=2 AND side_id= 1
Microsoft VBScript runtime error '800a01b6'

Object doesn't support this property or method: 'Execute'

/wsite/index.asp, line 331
Avatar billede jmc Nybegynder
04. juni 2002 - 17:11 #6
mit RS er øverst og har altid været det,... bare ikke her hvor jeg paster det ind i eksperten.
Avatar billede jmc Nybegynder
04. juni 2002 - 17:12 #7
sorry men mit dok er over 500 linier. ;o)
Avatar billede medions Nybegynder
04. juni 2002 - 17:16 #8
<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
set conn_visiter_menu = Server.CreateObject("ADODB.Recordset")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>
<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = '" & replace(v_acum_id,"'","''") & "' where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
    conn_visiter_menu.Execute(strSQL)

    %>

Prøv lige med denne!
//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 17:18 #9
normalt skriver ULTRADEV en update sådan, det kan være jeg skal gå ind i en dybere analyse for at finde ud af hvad jeg gør forkert i min to liniers version ???

<%
' *** Update Record: construct a sql update statement and execute it

If (CStr(Request("MM_update")) <> "" And CStr(Request("MM_recordId")) <> "") Then

  ' create the sql update statement
  MM_editQuery = "update " & MM_editTable & " set "
  For i = LBound(MM_fields) To UBound(MM_fields) Step 2
    FormVal = MM_fields(i+1)
    MM_typeArray = Split(MM_columns(i+1),",")
    Delim = MM_typeArray(0)
    If (Delim = "none") Then Delim = ""
    AltVal = MM_typeArray(1)
    If (AltVal = "none") Then AltVal = ""
    EmptyVal = MM_typeArray(2)
    If (EmptyVal = "none") Then EmptyVal = ""
    If (FormVal = "") Then
      FormVal = EmptyVal
    Else
      If (AltVal <> "") Then
        FormVal = AltVal
      ElseIf (Delim = "'") Then  ' escape quotes
        FormVal = "'" & Replace(FormVal,"'","''") & "'"
      Else
        FormVal = Delim + FormVal + Delim
      End If
    End If
    If (i <> LBound(MM_fields)) Then
      MM_editQuery = MM_editQuery & ","
    End If
    MM_editQuery = MM_editQuery & MM_columns(i) & " = " & FormVal
  Next
  MM_editQuery = MM_editQuery & " where " & MM_editColumn & " = " & MM_recordId

  If (Not MM_abortEdit) Then
    ' execute the update
    Set MM_editCmd = Server.CreateObject("ADODB.Command")
    MM_editCmd.ActiveConnection = MM_editConnection
    MM_editCmd.CommandText = MM_editQuery
    MM_editCmd.Execute
    MM_editCmd.ActiveConnection.Close

    If (MM_editRedirectUrl <> "") Then
      Response.Redirect(MM_editRedirectUrl)
    End If
  End If

End If
%>
Avatar billede jmc Nybegynder
04. juni 2002 - 17:19 #10
nu siger den:

Update querys set visits = '4' where visiter_id=2 AND side_id= 1
Microsoft VBScript runtime error '800a01a8'

Object required: ''

/wsite/index.asp, line 331

conn_visiter_menu.Execute(strSQL)
Avatar billede jmc Nybegynder
04. juni 2002 - 17:20 #11
alle datatyper er tal! (visiterID ; side_id ; visits)
Avatar billede medions Nybegynder
04. juni 2002 - 17:26 #12
<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
set conn_visiter_menu = Server.CreateObject("ADODB.Recordset")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>
<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = " & replace(v_acum_id,"'","''") & " where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
    conn_visiter_menu.Execute(strSQL)

    %>

prøv med denne!
//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 17:30 #13
Nu skal jeg hjem, fortsætter i aften. tak for hjælpen foreløbigt, den har drillet mig hele dagen.
Avatar billede medions Nybegynder
04. juni 2002 - 17:33 #14
:-) Bare i orden!

//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 17:34 #15
jeg ændre kun det nederste da jeg ikke går ud fra at du ændre noget i mit recordsæt.

den melder fejlen:
Update querys set visits = 4 where visiter_id=2 AND side_id= 1
Microsoft VBScript runtime error '800a01a8'

Object required: ''

/wsite/index.asp, line 331
Avatar billede medions Nybegynder
04. juni 2002 - 17:45 #16
<%
set rs_visiter_menu = Server.CreateObject("ADODB.Recordset")
set conn_visiter_menu = Server.CreateObject("ADODB.Connection")
rs_visiter_menu.ActiveConnection = MM_content2_STRING
rs_visiter_menu.Source = "SELECT *  FROM hent_visits  WHERE visiter_id = " + Replace(rs_visiter_menu__MMColParam, "'", "''") + "  ORDER BY visits DESC"
rs_visiter_menu.CursorType = 0
rs_visiter_menu.CursorLocation = 2
rs_visiter_menu.LockType = 3
rs_visiter_menu.Open()
rs_visiter_menu_numRows = 0
%>
<%' *** Opdater VISITOR TABEL
    v_visiter_id = request.cookies("sitevisit")
    v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)
    v_side_id = request("s")
   
strSQL = "Update querys set visits = " & replace(v_acum_id,"'","''") & " where visiter_id=" & v_visiter_id & " AND side_id= " & v_side_id & " "
   
            response.write strSQL
    conn_visiter_menu.Execute(strSQL)

    %>

Prøv med denne!
//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 18:48 #17
hummm ?

ADODB.Field error '800a0bcd'

Enten er BOF eller EOF sand, eller den aktuelle post er blevet slettet. Den anmodede handling kræver en aktuel post.

/wsite/index.asp, line 325
v_acum_id = Cint((rs_visiter_menu.Fields.Item("visits").Value) + 1)

den skal jeg lige tjekke.... øjeblik
Avatar billede medions Nybegynder
04. juni 2002 - 18:59 #18
Hmm.. *G* har du tænkt dig jeg skal rette ALLE dine fejl i koden? Allerede nu har jeg rettet 2 fejl!

//>Rune
Avatar billede jmc Nybegynder
04. juni 2002 - 22:30 #19
sorry, jeg takker. :~}
Avatar billede medions Nybegynder
04. juni 2002 - 23:26 #20
okay :-)

Thx 4 Poinz
//>Rune
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester