| |||
validaaAARGGHHH!!! hola. mi problema es este: hice un script de loguin que funciona perfecto, pero me di cuenta de un detalle: dos usuarios con distintos datos podían tener una misma password e id....lo que es un problema. así que para eso cree un asp que recibe los datos: hago una coneccion a la db para ver si id y pass existen; si existen, redirecciono al formulario de registro; si no existen, creo una instruccion sql que inserta los datos en la tabla correspondiente y lo ejecuto; pero la porqueria esta sigue dejando pasar los datos repetidos...debe ser mi dislexia sql... |
| |||
Re: validaaAARGGHHH!!! ¿Puedes poner la sentencia que utilizas para comprobar la existencia del login y password?. Ah, te aconsejo que sólo controles que no se repita el usuario, que el password se repita no es ningún problema ![]() |
| |||
Re: validaaAARGGHHH!!! He aqui la sentencia que revisa y luego decide....los campos son "name" y "passw"; los campos correspondientes en la tabla "gente" son "nick" y "password"..... ' vemos si nick o pass existen set con = server.createobject("adodb.connection") con.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/usuarios.mdb") set rc=server.createobject("adodb.recordset" ) sql = "SELECT password FROM gente WHERE nick ='" & name & "'" rc.Open sql, Con If not rc.eof then If (Request.Form("passw")) = rc("password") Then Response.Redirect"inscripcion.asp?falla=nick_ o_password_usados" end if end if '------------------------------- ' si nick o pass no existen sql="insert into gente (nick,password,nombres,apellidos,sexo,fechanac,est civil,pais,ciudad,direccion,telefono,celular,email ) values (" & "'" & nick & "'," & "'" & pass & "'," & "'" & nomb & "'," & "'" & apell & "'," & "'" & sex & "'," & "'" & nac & "'," & "'" & estcivil & "'," & "'" & country & "'," & "'" & ciudad1 & "'," & "'" & direcc & "'," & "'" & fono & "'," & "'" & mov & "'," & "'" & mail & "')" con.execute sql set rc=nothing set con=nothing |
| |||
Re: validaaAARGGHHH!!! porque no validas antes de hacer el insert con un select, y si no existe un registro con ese criterio recien lo insertas, en caso contrario envia un mensaje que nick ya existe. algo asi sql="select * from gente where nick=" & nick & "" rc.Open sql, Con if rc.eof then sql="insert into gente (nick,password,nombres,apellidos,sexo,fechanac,est civil,pais,ciudad,direccion,telefono,celular,email ) values (" & "'" & nick & "'," & "'" & pass & "'," & "'" & ........................... end if Otra alternativa es que en tu base de datos pongas como clave el campo NICK y PASSWORD. saludos. Nilton. |
| |||
Re: validaaAARGGHHH!!! algunas personas me han dicho que no entendieron completamente lo que estoy haciendo.... así que aquí va el codigo de nuevo... '-------------------------------------------------------------- 'campos del formulario name=request("name") passw=request("passw") '-------------------------------------------------------------- set con = server.createobject("adodb.connection") con.open "DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("../db/usuarios.mdb") set rc=server.createobject("adodb.recordset" ) '-------------------------------------------------------------- sql="select nick from gente where nick='" & name & "'" rc.Open sql, Con if rc.eof then '-------------------------------------------------------------- sql="insert into gente (nick,password,nombres,apellidos,sexo,fechanac,est civil,pais,ciudad,direccion,telefono,celular,email ) values (" & "'" & nick & "'," & "'" & pass & "'," & "'" & nomb & "'," & "'" & apell & "'," & "'" & sex & "'," & "'" & nac & "'," & "'" & estcivil & "'," & "'" & country & "'," & "'" & ciudad1 & "'," & "'" & direcc & "'," & "'" & fono & "'," & "'" & mov & "'," & "'" & mail & "')" '-------------------------------------------------------------- else '-------------------------------------------------------------- Response.Redirect"inscripcion.asp?falla=nick_ o_password_usados" end if '-------------------------------------------------------------- con.execute sql '-------------------------------------------------------------- set rc=nothing set con=nothing response.redirect"ok.asp" Comunicador Grafico 09-4759729 |