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

ayuda duplicados en base de datos

Estas en el tema de ayuda duplicados en base de datos en el foro de ASP Clásico en Foros del Web. hola, tengo una paguina de registros que en teoria si registran un imeil que esta en la base de datos ya introducido te manda a ...
  #1 (permalink)  
Antiguo 19/06/2004, 14:15
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
ayuda duplicados en base de datos

hola, tengo una paguina de registros que en teoria si registran un imeil que esta en la base de datos ya introducido te manda a otra paguina que te da un mensage de imeil ya introducido, pero no se que tengo mal pero no te manda a la otra paguina si no que mete otro registro con ese imeil, el codigo es este aver si alguien ve algo que este mal.

'Recupero los datos del formulario y los introduzco en sus respectivas variables
ses=session("inses")
nombre=request.form("nombre")
apellidos=request.form("apellidos")
email=request.form("email")
nick=request.form("nick")
pass=request.form("pass")
direccion=request.form("direccion")
ciudad=request.form("ciudad")
provincia=request.form("provincia")
pais=request.form("pais")
telf=request.form("telf")
cp=request.form("cp")
estadocivil=request.form("estadocivil")
sexo=request.form ("sexo")
ocupacion=request.form("ocupacion")
intereses=request.form("intereses")

'response.write(email & "<br>")

'si telf, ocupacion o intereses estan vacios añade un &nbsp;
if telf=""then telf="&nbsp;"end if
if ocupacion="" then ocupacion="&nbsp;" end if
if intereses=""then intereses="&nbsp;" end if

'consulta SQL
'SQL="Select EMAIL From USUARIOS where EMAIL="&email
'creo el objecto ADOB
'Set conexion=Server.CreateObject("ADOB.Connection")
'abro la conexion
'conexion.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db0001/db0001.mdb")
'Ejecuto la Consulta SQL
'response.write(SQL)
'set Registros.execute(SQL)

'si no encuantra coincidencia
'if Registros.eof or Registros.bof then

'inserto la consulta sql en la variable Consul
Consul="INSERT INTO USUARIOS (NOMBRE,APELLIDOS,EMAIL,DIRECCION,CIUDAD,PROVINCIA ,PAIS,CP,TELF,OCUPACION,SEXO,ESTADOCIVIL,INTERESES ,NICK,PASS) VALUES ('"&nombre&"','"&apellidos&"','"&email&"','"&direc cion&"','"&ciudad&"','"&provincia&"','"&pais&"','" &cp&"','"&telf&"','"&ocupacion&"','"&sexo&"','"&es tadocivil&"','"&intereses&"','"&nick&"','"&pass&"' )"
'Creo el objeto conexion
Set Conn=Server.CreateObject("ADODB.Connection")
'Abro la conexion a la base de datos
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db0001/db0001.mdb")
'Ejecuto la consulata Sql de entrada de datos
set rs=Conn.execute(Consul)
'cierro conexion
Conn.close
set rs=nothing
set conn=nothing

'si no redirecciono
'else
'response.Redirect("plantilla.asp")
'end if

'cierro conecexion
'conexion.close
  #2 (permalink)  
Antiguo 20/06/2004, 06:36
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
no ai nadie que me pueda decir lo que me falla del codigo
  #3 (permalink)  
Antiguo 20/06/2004, 07:59
 
Fecha de Ingreso: noviembre-2002
Mensajes: 224
Antigüedad: 21 años, 7 meses
Puntos: 1
hola trunder!
será porque la instruccion en que consultas si el email existe está comentada? Bueno, de hecho hay varias lineas:

'SQL="Select EMAIL From USUARIOS where EMAIL="&email
...
'Set conexion=Server.CreateObject("ADOB.Connection")
...
'conexion.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db0001/db0001.mdb")
...
'set Registros.execute(SQL)
...
'if Registros.eof or Registros.bof then
...

Yo diria que deberias descomentar esas lineas
  #4 (permalink)  
Antiguo 20/06/2004, 08:26
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
perodana mi ignorancia pero que quieres decir con descomentar?
  #5 (permalink)  
Antiguo 20/06/2004, 08:29
Avatar de meru-kun  
Fecha de Ingreso: noviembre-2002
Ubicación: Madrid
Mensajes: 854
Antigüedad: 21 años, 6 meses
Puntos: 0
Pues se refiere a quitar el caracter <b>'</b> de delante de las cadenas, caracter que se utiliza en ASP para comentar código, es decir, para poner explicaciones, comentarios, etc.
__________________
Tu portal de manga y anime.
  #6 (permalink)  
Antiguo 20/06/2004, 08:52
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
ya e quitado los comentarios pero me sige aceptando un
imeil que ya este en la base de datos
  #7 (permalink)  
Antiguo 20/06/2004, 12:31
Avatar de MartYn  
Fecha de Ingreso: junio-2004
Ubicación: MTY-Mexico
Mensajes: 49
Antigüedad: 20 años
Puntos: 0
mejor

mejor ponle al campo (email) de la base de datos NO ACEPTAR DUPLICADOS

en la tabla

y listo, no te dejara aceptar el formulario si ya existe
  #8 (permalink)  
Antiguo 20/06/2004, 12:36
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
ya eso ya lo ice pero entonces el explorer le da un mensage de error y lo que yo quiero es que lo mande a otra paguina mia
  #9 (permalink)  
Antiguo 20/06/2004, 14:59
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
aver para mi es dificil saber lo que falla por que toy empezando y esta paguina me la izo un amigo, pero tiene que aver alguien que sepa que esta mal en el codigo, por fabor necesito ayuda ya no se donde mirar ni donde preguntar
  #10 (permalink)  
Antiguo 22/06/2004, 07:30
 
Fecha de Ingreso: noviembre-2002
Mensajes: 224
Antigüedad: 21 años, 7 meses
Puntos: 1
hola trunder!
Si has quitado los comentarios... no encuentro el fallo. Ademas si te inserta registros en la BD es que no funciona mal... Podrias poner el codigo entero que tienes ahora en la pagina? Es que yo he hecho una prueba con el mismo codigo (en ensencia) que tienes tu, y me funciona perfecto. Deja otra vez el codigo y a ver si te puedo ayudar.
CHao!
  #11 (permalink)  
Antiguo 22/06/2004, 09:19
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
que quieres el codigo entero de la paguina?
  #12 (permalink)  
Antiguo 22/06/2004, 10:20
Avatar de Myakire
Colaborador
 
Fecha de Ingreso: enero-2002
Ubicación: Centro de la república
Mensajes: 8.849
Antigüedad: 22 años, 4 meses
Puntos: 146
A ver, prueba esto:

Set conexion=Server.CreateObject("ADOB.Connection")
conexion.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="&Server.MapPath("db0001/db0001.mdb")
set adoRs = Server.CreateObject("adodb.recordset")
SQL="Select EMAIL From USUARIOS where EMAIL='"&email &"'"
adoRs.Open SQL,conexion
if adoRs.EOF Then
......todo lo demás ...

Saludos
  #13 (permalink)  
Antiguo 22/06/2004, 11:10
 
Fecha de Ingreso: noviembre-2002
Mensajes: 224
Antigüedad: 21 años, 7 meses
Puntos: 1
hola!
No creo que sea lo de las comillas, Myakire, si no le habría dado un error de que falta un operador en la sentencia. Y segun trunder, el registro lo inserta bien, asi que una de dos, o en realidad la pagina no le está funcionando porque le faltan las comillas o no la tiene tal que así . Bueno trunder, si aun asi no te funciona podrias pasarnos el codigo entero de la pagina. Chaoooo!
  #14 (permalink)  
Antiguo 22/06/2004, 11:15
 
Fecha de Ingreso: junio-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
ya lo e solucionado, gracias por la ayuda a todos
  #15 (permalink)  
Antiguo 22/06/2004, 11:36
 
Fecha de Ingreso: noviembre-2002
Mensajes: 224
Antigüedad: 21 años, 7 meses
Puntos: 1
a ti trunder!
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 00:56.