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

¿Se puede hacer esto?

Estas en el tema de ¿Se puede hacer esto? en el foro de ASP Clásico en Foros del Web. Tengo datos de un usuario en una base de datos y quiero hacer una pagina para modificarlos. He pensado en hacer un formulario y q ...
  #1 (permalink)  
Antiguo 18/06/2002, 15:18
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
¿Se puede hacer esto?

Tengo datos de un usuario en una base de datos y quiero hacer una pagina para modificarlos. He pensado en hacer un formulario y q en el figuren los datos del usuario q figuran en la bd, y sobre estos escribir los nuevos o dejar los antiguos. Como se hace? Se puede? Gracias ;)
<a href='ir.asp?http://mailto:[email protected]' target='_blank'>mailto:[email protected]...</a>
  #2 (permalink)  
Antiguo 18/06/2002, 15:43
Avatar de DanielRey
Usuario no validado
 
Fecha de Ingreso: enero-2001
Ubicación: Mendoza
Mensajes: 630
Antigüedad: 24 años, 3 meses
Puntos: 1
Re: ¿Se puede hacer esto?

Hola Jpalbox :)

Es sencillísimo.

Te conectas a la base, levantas los datos del usuario en un recordset y usas el &quot;value&quot; de los INPUT.

Ejemplo:
&lt;INPUT TYPE=text VALUE=&lt;%=Rs(&quot;nombre&quot;)%&gt; NAME=nombre&gt;

Suerte ;)
  #3 (permalink)  
Antiguo 19/06/2002, 05:43
 
Fecha de Ingreso: mayo-2002
Mensajes: 82
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

y luego para modificar los datos, si ha introducido un dato en algún campo realizas un UPDATE de ese registro usando el valor q ha introducido
  #4 (permalink)  
Antiguo 19/06/2002, 16:51
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

Si sera facil pero a mi sigue sin salirme nada, os muetro el codigo y le hechais un vistazo:
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Modificar datos entrada&lt;/title&gt;
&lt;/head&gt;
&lt;body&gt;
&lt;%'Abre la conexion con la base de datos a traves de una conexion ODBC
Set con = Server.CreateObject(&quot;ADODB.Connection&quot;)
'Como vamos a utilizar la variable rs del tipo recordset para recorrer los registros con EOF
Set rs = Server.CreateObject(&quot;ADODB.Recordset&quot;)
con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot ;))
%&gt;
&lt;div align=&quot;center&quot;&gt;&lt;center&gt;
&lt;table width=&quot;339&quot;&gt;
&lt;tr&gt;
&lt;td&gt;Nombre:&lt;input type=&quot;text&quot; name=&quot;nombre&quot; VALUE=&quot;&lt;%=Rs(&quot;nombre&quot;)%&gt;&quot ;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/center&gt;&lt;/div&gt;&lt;%
con.Close
Set con = Nothing
%&gt;
&lt;/body&gt;
&lt;/html&gt;
lo unico q he conseguido es q me de el siguiente error q no se lo q significa :
ADODB.Recordset error '800a0cc1'

&quot;Item cannot be found in the collection corresponding to the requested name or ordinal. &quot;

/jpalbox/modificar.asp, line 18
  #5 (permalink)  
Antiguo 19/06/2002, 16:55
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?

pues amigo despues de crear la conexion y el recorset te falta hacer el select que te rescate los datos y te llene el recorset

Código:
  
Set rs = Server.CreateObject(&quot;ADODB.Recordset&quot;) 
con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot;))

SQL=&quot;Select * from TABLA where nombre=?&quot; &amp; tu_variable &amp; &quot;'&quot;
SET rs=con.execute(SQL)

if not rs.eof and not rs.bof then

'todo el resto que sigue
%&gt;
obviamente tu SQL debe quedar segun lo que desees tu...solo es un ejemplo.

  #6 (permalink)  
Antiguo 19/06/2002, 16:57
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?


disculpa el exabrupto

nombre=?&quot; &amp; tu_variable &amp; &quot;'&quot;

tiene que ser asi

nombre='&quot; &amp; tu_variable &amp; &quot;'&quot;



  #7 (permalink)  
Antiguo 19/06/2002, 17:16
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

perdona pero es q soy novato, el codigo q contiene el formulario donde lo meto, antes de cerrar la conexion con la base de datos o despues
  #8 (permalink)  
Antiguo 19/06/2002, 17:20
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?

el lugar donde está esta bien

osea despues de esto

con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot ;))

colocar el select

el if

%&gt;

&lt;!--CODIGO HTML--&gt;
&lt;DIV&gt;
BLA..BLA...BLA..

&lt;/DIV&gt;
&lt;%END IF
'CIERRAS LAS CONEXIONES


ME EXPLICO



  #9 (permalink)  
Antiguo 19/06/2002, 17:24
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

Mira lo q he hecho &lt;html&gt;

&lt;head&gt;
&lt;title&gt;Modificar datos entrada&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;%'Abre la conexion con la base de datos a traves de una conexion ODBC
Set con = Server.CreateObject(&quot;ADODB.Connection&quot;)
'Como vamos a utilizar la variable rs del tipo recordset para recorrer los registros con EOF
Set rs = Server.CreateObject(&quot;ADODB.Recordset&quot;)
con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot ;))

SQL=&quot;Select * from Personal where usuario=&quot; &amp; jpalbox &amp; &quot;'&quot;
SET rs=con.execute(SQL)
If rs.EOF = True then
%&gt;
&lt;div align=&quot;center&quot;&gt;&lt;center&gt;

&lt;table width=&quot;339&quot;&gt;
&lt;tr&gt;
&lt;td&gt;Nombre:&lt;input type=&quot;text&quot; name=&quot;nombre&quot; VALUE=&quot;&lt;%=Rs(&quot;nombre&quot;)%&gt;&quot ; size=&quot;20&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/center&gt;&lt;/div&gt;&lt;%
end if
con.Close
Set con = Nothing
%&gt;

&lt;/body&gt;
&lt;/html&gt;
corrigeme. Gracias
  #10 (permalink)  
Antiguo 19/06/2002, 17:30
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?

vas bien, cambian esto:

Código:
  
SQL=&quot;Select * from Personal where usuario='&quot; &amp; jpalbox &amp; &quot;'&quot;
SET rs=con.execute(SQL)

If not(rs.EOF) then
recuerda esto tb:
consulta tipo texto

Código:
  
dato = '&quot; &amp; variable &amp;&quot;'
'comilla simple + comilla doble + &amp;
rs.eof=true
quiere decir que es fin de registro...o sea que la consulta no encontro datos que coincidan lo que quiere decir que no existe el registro con esat especificacion..entonces incluso esto puedes validarlo con un mensaje...

algo asi..

if not rs.eof then

'todo el html y resultado del registro

else

'usuario inexistente

end if
  #11 (permalink)  
Antiguo 19/06/2002, 17:38
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

lo he modificado y sigue dandome error
&lt;html&gt;

&lt;head&gt;
&lt;title&gt;Modificar datos entrada&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;%'Abre la conexion con la base de datos a traves de una conexion ODBC
Set con = Server.CreateObject(&quot;ADODB.Connection&quot;)
'Como vamos a utilizar la variable rs del tipo recordset para recorrer los registros con EOF
Set rs = Server.CreateObject(&quot;ADODB.Recordset&quot;)
con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot ;))

SQL=&quot;Select * from Personal where usuario=&quot; &amp; jpalbox &amp; &quot;'&quot;
SET rs=con.execute(SQL)
If rs.EOF = True then
response.write &quot;no exite el usuario&quot;
else
%&gt;
&lt;div align=&quot;center&quot;&gt;&lt;center&gt;

&lt;table width=&quot;339&quot;&gt;
&lt;tr&gt;
&lt;td&gt;Nombre:&lt;input type=&quot;text&quot; name=&quot;nombre&quot; VALUE=&quot;&lt;%=Rs(&quot;nombre&quot;)%&gt;&quot ; size=&quot;20&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/center&gt;&lt;/div&gt;&lt;%
end if
con.Close
Set con = Nothing
%&gt;

&lt;/body&gt;
&lt;/html&gt;
  #12 (permalink)  
Antiguo 19/06/2002, 17:42
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

lo he modificado y sigue dandome error
&lt;html&gt;

&lt;head&gt;
&lt;title&gt;Modificar datos entrada&lt;/title&gt;
&lt;/head&gt;

&lt;body&gt;
&lt;%'Abre la conexion con la base de datos a traves de una conexion ODBC
Set con = Server.CreateObject(&quot;ADODB.Connection&quot;)
'Como vamos a utilizar la variable rs del tipo recordset para recorrer los registros con EOF
Set rs = Server.CreateObject(&quot;ADODB.Recordset&quot;)
con.Open(&quot;DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=&quot; &amp; Server.MapPath(&quot;\jpalbox\db\usuarios.mdb&quot ;))

SQL=&quot;Select * from Personal where usuario=&quot; &amp; jpalbox &amp; &quot;'&quot;
SET rs=con.execute(SQL)
If rs.EOF = True then
response.write &quot;no exite el usuario&quot;
else
%&gt;
&lt;div align=&quot;center&quot;&gt;&lt;center&gt;

&lt;table width=&quot;339&quot;&gt;
&lt;tr&gt;
&lt;td&gt;Nombre:&lt;input type=&quot;text&quot; name=&quot;nombre&quot; VALUE=&quot;&lt;%=Rs(&quot;nombre&quot;)%&gt;&quot ; size=&quot;20&quot;&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;/center&gt;&lt;/div&gt;&lt;%
end if
con.Close
Set con = Nothing
%&gt;

&lt;/body&gt;
&lt;/html&gt;
  #13 (permalink)  
Antiguo 19/06/2002, 17:42
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?

puedes postear el error..

depues de esto pon:

SQL=&quot;Select * from Personal where usuario=&quot; &amp; jpalbox &amp; &quot;'&quot;

response.write SQL

otra cosa...jpalbox es una variable o es simplemente texto...

si quieres preguntar por ese usuario en particular haz esto antes de hacer el sql

Dim usuario

usuario=&quot;jpalbox&quot;

despues reemplaza jpalbox por usuario en la consulta..

espero que te vaya bien me tengo que ir...

suerte
  #14 (permalink)  
Antiguo 19/06/2002, 17:43
Avatar de bakanzipp  
Fecha de Ingreso: noviembre-2001
Ubicación: santiago de shilli
Mensajes: 2.554
Antigüedad: 23 años, 5 meses
Puntos: 0
Re: ¿Se puede hacer esto?

ah y esto esta mal...
te falta una comilla

Código:
  
SQL=&quot;Select * from Personal where usuario=&quot; &amp; jpalbox &amp; &quot;'&quot;
Código:
  
SQL=&quot;Select * from Personal where usuario='&quot; &amp; jpalbox &amp; &quot;'&quot;
  #15 (permalink)  
Antiguo 19/06/2002, 17:52
 
Fecha de Ingreso: abril-2002
Mensajes: 432
Antigüedad: 23 años
Puntos: 0
Re: ¿Se puede hacer esto?

Muchas Gracias amigo Lo he conseguido, ahora voy a intentar modificar el registro a ver si me lo actualiza Gracias. Mi msn es [email protected]
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 11:04.