Foros del Web » Programando para Internet » ASP Clásico »

ayuda con dreamweaver - asp

Estas en el tema de ayuda con dreamweaver - asp en el foro de ASP Clásico en Foros del Web. saludos maestros... hey hermanos tengo un problema no se si este es el foro adecuado para hacer esta pregunta pero se que aqui me pueden ...
  #1 (permalink)  
Antiguo 09/06/2003, 17:04
 
Fecha de Ingreso: marzo-2002
Mensajes: 29
Antigüedad: 23 años, 2 meses
Puntos: 0
ayuda con dreamweaver - asp

saludos maestros...

hey hermanos tengo un problema no se si este es el foro adecuado para hacer esta pregunta pero se que aqui me pueden ayudar.

mi problema es que yo trabajo con dreamweaver mx y he estado haciendo unas pequeñas aplicaciones junto con la ayuda que trae (hice un formulario de insertar y bien, de consulta bien) pero cuando hago un formulario de actualizar y el de borrar me da este error

Tipo de error:
ADODB.Field (0x800A0BCD)
El valor de BOF o EOF es True, o el actual registro se eliminó; la operación solicitada requiere un registro actual.
borrar.asp, line 305

alguien sabe como puedo solucionar esto???

ya me lei todo lo del manual que trae y aparentemente todo como esta ahi lo he hecho pero no se que es (se que he hecho algo mal pero nose que es?).

de antemano gracias...
  #2 (permalink)  
Antiguo 09/06/2003, 17:22
Avatar de Bravenap  
Fecha de Ingreso: noviembre-2002
Ubicación: Los Arroyos, El Escorial, Madrid
Mensajes: 2.084
Antigüedad: 22 años, 5 meses
Puntos: 4
¿Qué tal si pones el código para ver que puedes estar haciendo mal?
__________________
¡¡NO A LA GUERRA!!
Si ponemos a nuestros mensajes títulos adecuados, la gente se animará más a abrirlos y resultarán más útiles en las busquedas. ¡No a los ayuuudaaa, urgenteee y similares!
  #3 (permalink)  
Antiguo 09/06/2003, 18:45
Avatar de maestro  
Fecha de Ingreso: febrero-2002
Ubicación: España
Mensajes: 2.364
Antigüedad: 23 años, 3 meses
Puntos: 1
Posiblemente estes pasando un ID del registro que quires borrar que ya no existe en la base de datos, por eso te dice lo de BOF y EOF.

Pon las linea de codigo del erro como te comentaban (no todo el script, una pocas lineas cercanas al error)
__________________
Jose Maria Fernandez
[email protected]
Http://www.expansionweb.net
  #4 (permalink)  
Antiguo 10/06/2003, 07:19
 
Fecha de Ingreso: junio-2003
Ubicación: Asturias
Mensajes: 2.429
Antigüedad: 21 años, 11 meses
Puntos: 7
No se el codigo, asi que estoy hablando a ciegas, pero seguramente estarás eliminado algo que no existe, asi que revista bien tu codigo.

CN.Execute("Delete * from tabla where id=" &variableID)
CN es la conexion, tendrias q tener algo asi, haz previamente un response.write(variableid) y haber q te muestra.
__________________
Charlie.
  #5 (permalink)  
Antiguo 10/06/2003, 09:29
 
Fecha de Ingreso: marzo-2002
Mensajes: 29
Antigüedad: 23 años, 2 meses
Puntos: 0
disculpen el no poderles responder antes pero desde ayer que puse la pregunta no he estado en mi maquina.

la verdad es que yo no se mucho de codigos lo que pasa es que estoy comenzando a aprender en dreamweaver y desde ahi lo hago pero este es el codigo que me genera.



<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/ejem_3.asp" -->
<%
' *** Edit Operations: declare variables

Dim MM_editAction
Dim MM_abortEdit
Dim MM_editQuery
Dim MM_editCmd

Dim MM_editConnection
Dim MM_editTable
Dim MM_editRedirectUrl
Dim MM_editColumn
Dim MM_recordId

Dim MM_fieldsStr
Dim MM_columnsStr
Dim MM_fields
Dim MM_columns
Dim MM_typeArray
Dim MM_formVal
Dim MM_delim
Dim MM_altVal
Dim MM_emptyVal
Dim MM_i

MM_editAction = CStr(Request.ServerVariables("SCRIPT_NAME"))
If (Request.QueryString <> "") Then
MM_editAction = MM_editAction & "?" & Request.QueryString
End If

' boolean to abort record edit
MM_abortEdit = false

' query string to execute
MM_editQuery = ""
%>
<%
' *** Delete Record: declare variables

if (CStr(Request("MM_delete")) = "form1" And CStr(Request("MM_recordId")) <> "") Then

MM_editConnection = MM_ejem_3_STRING
MM_editTable = "Tabla"
MM_editColumn = "apellido"
MM_recordId = "'" + Request.Form("MM_recordId") + "'"
MM_editRedirectUrl = "busqueda.asp"

' append the query string to the redirect URL
If (MM_editRedirectUrl <> "" And Request.QueryString <> "") Then
If (InStr(1, MM_editRedirectUrl, "?", vbTextCompare) = 0 And Request.QueryString <> "") Then
MM_editRedirectUrl = MM_editRedirectUrl & "?" & Request.QueryString
Else
MM_editRedirectUrl = MM_editRedirectUrl & "&" & Request.QueryString
End If
End If

End If
%>
<%
' *** Delete Record: construct a sql delete statement and execute it

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

' create the sql delete statement
MM_editQuery = "delete from " & MM_editTable & " where " & MM_editColumn & " = " & MM_recordId

If (Not MM_abortEdit) Then
' execute the delete
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
%>
<%
Dim borrar__MMColParam
borrar__MMColParam = "1"
If (Request.QueryString("apellido") <> "") Then
borrar__MMColParam = Request.QueryString("apellido")
End If
%>
<%
Dim borrar
Dim borrar_numRows

Set borrar = Server.CreateObject("ADODB.Recordset")
borrar.ActiveConnection = MM_ejem_3_STRING
borrar.Source = "SELECT * FROM Tabla WHERE apellido = '" + Replace(borrar__MMColParam, "'", "''") + "'"
borrar.CursorType = 0
borrar.CursorLocation = 2
borrar.LockType = 1
borrar.Open()

borrar_numRows = 0
%>
<%
' *** Recordset Stats, Move To Record, and Go To Record: declare stats variables

Dim borrar_total
Dim borrar_first
Dim borrar_last

' set the record count
borrar_total = borrar.RecordCount

' set the number of rows displayed on this page
If (borrar_numRows < 0) Then
borrar_numRows = borrar_total
Elseif (borrar_numRows = 0) Then
borrar_numRows = 1
End If

' set the first and last displayed record
borrar_first = 1
borrar_last = borrar_first + borrar_numRows - 1

' if we have the correct record count, check the other stats
If (borrar_total <> -1) Then
If (borrar_first > borrar_total) Then
borrar_first = borrar_total
End If
If (borrar_last > borrar_total) Then
borrar_last = borrar_total
End If
If (borrar_numRows > borrar_total) Then
borrar_numRows = borrar_total
End If
End If
%>
<%
Dim MM_paramName
%>
<%
' *** Move To Record and Go To Record: declare variables

Dim MM_rs
Dim MM_rsCount
Dim MM_size
Dim MM_uniqueCol
Dim MM_offset
Dim MM_atTotal
Dim MM_paramIsDefined

Dim MM_param
Dim MM_index

Set MM_rs = borrar
MM_rsCount = borrar_total
MM_size = borrar_numRows
MM_uniqueCol = "apellido"
MM_paramName = "apellido"
MM_offset = 0
MM_atTotal = false
MM_paramIsDefined = false
If (MM_paramName <> "") Then
MM_paramIsDefined = (Request.QueryString(MM_paramName) <> "")
End If
%>
<%
' *** Move To Specific Record: handle detail parameter

If (MM_paramIsDefined And MM_rsCount <> 0) Then

' get the value of the parameter
MM_param = Request.QueryString(MM_paramName)

' find the record with the unique column value equal to the parameter value
MM_offset = 0
Do While (Not MM_rs.EOF)
If (CStr(MM_rs.Fields.Item(MM_uniqueCol).Value) = MM_param) Then
Exit Do
End If
MM_offset = MM_offset + 1
MM_rs.MoveNext
Loop

' if not found, set the number of records and reset the cursor
If (MM_rs.EOF) Then
If (MM_rsCount < 0) Then
MM_rsCount = MM_offset
End If
If (MM_size < 0 Or MM_size > MM_offset) Then
MM_size = MM_offset
End If
MM_offset = 0

' reset the cursor to the beginning
If (MM_rs.CursorType > 0) Then
MM_rs.MoveFirst
Else
MM_rs.Close
MM_rs.Open
End If
End If

End If
%>
<%
' *** Move To Record: if we dont know the record count, check the display range

If (MM_rsCount = -1) Then

' walk to the end of the display range for this page
MM_index = MM_offset
While (Not MM_rs.EOF And (MM_size < 0 Or MM_index < MM_offset + MM_size))
MM_rs.MoveNext
MM_index = MM_index + 1
Wend

' if we walked off the end of the recordset, set MM_rsCount and MM_size
If (MM_rs.EOF) Then
MM_rsCount = MM_index
If (MM_size < 0 Or MM_size > MM_rsCount) Then
MM_size = MM_rsCount
End If
End If

' if we walked off the end, set the offset based on page size
If (MM_rs.EOF And Not MM_paramIsDefined) Then
If (MM_offset > MM_rsCount - MM_size Or MM_offset = -1) Then
If ((MM_rsCount Mod MM_size) > 0) Then
MM_offset = MM_rsCount - (MM_rsCount Mod MM_size)
Else
MM_offset = MM_rsCount - MM_size
End If
End If
End If

' reset the cursor to the beginning
If (MM_rs.CursorType > 0) Then
MM_rs.MoveFirst
Else
MM_rs.Requery
End If

' move the cursor to the selected record
MM_index = 0
While (Not MM_rs.EOF And MM_index < MM_offset)
MM_rs.MoveNext
MM_index = MM_index + 1
Wend
End If
%>
<%
' *** Move To Record: update recordset stats

' set the first and last displayed record
borrar_first = MM_offset + 1
borrar_last = MM_offset + MM_size

If (MM_rsCount <> -1) Then
If (borrar_first > MM_rsCount) Then
borrar_first = MM_rsCount
End If
If (borrar_last > MM_rsCount) Then
borrar_last = MM_rsCount
End If
End If

' set the boolean used by hide region to check if we are on the last record
MM_atTotal = (MM_rsCount <> -1 And MM_offset + MM_size >= MM_rsCount)
%>
<%
Dim Repeat1__numRows
Dim Repeat1__index

Repeat1__numRows = -1
Repeat1__index = 0
borrar_numRows = borrar_numRows + Repeat1__numRows
%>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<p>&nbsp;</p>
<form name="form1" method="POST" action="<%=MM_editAction%>">
<p align="center">
<input type="text" name="textfield">
</p>
<p align="center">
<input type="text" name="textfield2">
</p>
<p align="center">
<input type="text" name="textfield3">
</p>
<p align="center">
<input type="text" name="textfield4">
</p>
<p align="center">
<input type="submit" name="Submit" value="borrar">
</p>
<input type="hidden" name="MM_delete" value="form1">
<input type="hidden" name="MM_recordId" value="<%= borrar.Fields.Item("apellido").Value %>">
</form>
<p>&nbsp;</p>

</body>
</html>
<%
borrar.Close()
Set borrar = Nothing
%>
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 08:00.