ASP - evitar campos duplicados

 
Vista:

evitar campos duplicados

Publicado por Gyca (1 intervención) el 30/04/2007 22:30:13
Hola, ojala me puedan auyudar con esto, tengo el siguiente codigo, quiero que el campo cedula y email no se dupliquen en mi base de datos fiestas.mdb y de que en caso de que este metiendo un dato ya existente le comunique que ese dato ya está. muchas gracias por su ayuda

<%@ Language="VBScript" %>
<html>
<head>
<title>Ingreso de Datos</title>
</head>
<%
Session("nombre") = Request.form("nombre")
Session("empresa") = Request.form("empresa")
Session("telefono") = Request.form("telefono")
Session("email") = Request.form("email")
Session("cotizar") = Request.form("cotizar")
Session("producto") = Request.form("cedula")

%>
<%
'definimos la variable de conexion
Dim Conexion,Tabla
Set Conexion = Server.CreateObject("ADODB.Connection")
Set Tabla = Server.CreateObject("ADODB.Recordset")

'conectamos a la base de datos mediante OLE ODBC dando el Driver
Conexion.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("Fiestas.mdb")
'definimos la variable de carga de datos
Dim Temp
'buscamos los datos
Temp="Select * From Cotizacion "
Tabla.Open Temp,Conexion,2,3,1
'si no se repiten agregamos los datos a nuestro buscador

Tabla.AddNew
Tabla("nombre") = Request.form("nombre")
Tabla("empresa") = Request.form("empresa")
Tabla("telefono") = Request.form("telefono")
Tabla("email") = Request.form("email")
Tabla("cotizar") = Request.form("cotizar")
Tabla("producto") = Request.form("producto")
Tabla.Update
'fin del Script
%>

<font face="Tahoma" size="2"><b><i>Ingreso de datos completado</i></b></font></p>
<%
'si el campo ya existe para no hacer dobles nos da este mensaje
'cerramos la conexion
Tabla.Close
Conexion.Close
response.redirect("mienvio.asp")
%>

</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:evitar campos duplicados

Publicado por Javier (62 intervenciones) el 02/05/2007 12:12:08
Buenas
Pues para eso primero tienes que hacer un select a la tabla para comprobar si ya existen esos campos

'conectamos a la base de datos mediante OLE ODBC dando el Driver
Conexion.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("Fiestas.mdb")
'definimos la variable de carga de datos
Dim Temp
'buscamos los datos
Temp="Select * From Cotizacion Where Empresa='" & Request.form("empresa")
& "' OR email ='" & Request.form("email") & "'"

If TablaRecorCount>0 then
'Eso es que ya existe un registro con esos datos
Else
'si no se repiten agregamos los datos a nuestro buscador

Temp="Select * From Cotizacion "
Tabla.Open Temp,Conexion,2,3,1
'si no se repiten agregamos los datos a nuestro buscador
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:evitar campos duplicados

Publicado por Gyca (3 intervenciones) el 07/05/2007 15:01:34
Ok, gracias por la ayuda eres muy amable..!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:evitar campos duplicados

Publicado por Gyca (3 intervenciones) el 07/05/2007 23:01:34
Este error me sale

Microsoft VBScript compilation error '800a03f6'

Expected 'End'

si me puedes ayudar gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:evitar campos duplicados

Publicado por Gyca (3 intervenciones) el 07/05/2007 23:13:52
hola!! asi quedó el codigo...

<%@ Language="VBScript" %>
<html>
<head>
<title>Ingreso de Datos</title>
</head>
<%
Session("nombre") = Request.form("nombre")
Session("empresa") = Request.form("empresa")
Session("telefono") = Request.form("telefono")
Session("email") = Request.form("email")
Session("cotizar") = Request.form("cotizar")
Session("producto") = Request.form("producto")

%>
<%
'definimos la variable de conexion
Dim Conexion,Tabla
Set Conexion = Server.CreateObject("ADODB.Connection")
Set Tabla = Server.CreateObject("ADODB.Recordset")

'conectamos a la base de datos mediante OLE ODBC dando el Driver
Conexion.Open "Driver={Microsoft Access Driver (*.mdb)}; " & "Dbq=" & Server.MapPath("Fiestas.mdb") 'conectamos a la base de datos mediante OLE ODBC dando el Driver
Dim Temp
'buscamos los datos
Temp="Select * From Cotizacion = " & Request.form("empresa")

If TablaRecorCount>0 then
'Eso es que ya existe un registro con esos datos
Else
'si no se repiten agregamos los datos a nuestro buscador

Tabla.Open Temp,Conexion,2,3,1
'si no se repiten agregamos los datos a nuestro buscador

Tabla.AddNew
Tabla("nombre") = Request.form("nombre")
Tabla("empresa") = Request.form("empresa")
Tabla("telefono") = Request.form("telefono")
Tabla("email") = Request.form("email")
Tabla("cotizar") = Request.form("cotizar")
Tabla("producto") = Request.form("producto")
Tabla("cedula") = Request.form("cedula")
Tabla.Update
'fin del Script
%>

<font face="Tahoma" size="2"><b><i>Ingreso de datos completado</i></b></font></p>
<%
'si el campo ya existe para no hacer dobles nos da este mensaje

'cerramos la conexion
Tabla.Close
Conexion.Close
response.redirect("mienvio.asp")
%>

</body>
</html>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar