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

Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL

Estas en el tema de Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL en el foro de ASP Clásico en Foros del Web. Hola Amigos les solicito la ayuda de uds, en un problema del cual no puedo salir, les explico, con un amigo que sabe mas que ...
  #1 (permalink)  
Antiguo 11/05/2011, 09:41
 
Fecha de Ingreso: octubre-2010
Mensajes: 7
Antigüedad: 13 años, 5 meses
Puntos: 0
Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL

Hola Amigos les solicito la ayuda de uds, en un problema del cual no puedo salir, les explico, con un amigo que sabe mas que yo en programacion, hicimos una pagina x, el tema esta en que esta pagina tiene un modulo de altas de usuarios, esos usuarios deben quedar registrados en una BDD (base de datos) en SQL 2008, los datos los tomamos en ASP (clasico con dreamweaver) y los enviamos a SQL, sin embargo creeamos un Procedimiento almacenado (SP) para que tome los datos y los inserte en la tabla respectiva llamada usuarios....

lamentablemente mi amigo, esta en periodo de examenes y no me puede ayudar y yo no tengo a quien recurrir, el tema es que hice la programacion en ASP segun lo que he aprendido... e hice el procedimiento almacenado del cual no estoy seguro que esta bien y estoy mas que seguro que algo falta....

A ver si me puden ayudar a terminar mi aplicacion, a fin de solucionar este inconveniente del cual me siento en encerrado sin poder recibir ayuda...

les mostrare lo que yo programe en ASP, despues les mostrare mi Procedimiento almacenado.

Una obserbacion, en esta alta de usuarios, donde importa el rut, no se como validar el rut, es decir que si existe en la BDD arroje mensaje de que ya existe...,

Lo otro, esta alta de usuario asigna una clave por defecto, esa clave solo se inserta en el procedimiento almacenado, no es algo que haga el usuario o se haga por programacion en ASP, asi que asumo que me insertaria la clave en el campo determinado como password.

Los campos a llenar en la tabla de usuarios son:

Rut
dv (digito verificador)
Sga (nombre de la cuenta de usuario)
Nombre
Supervisor
Plataforma
password

En fin amigos POR FAVOR AYUDENME!!!...ya que en realidad no se como salir de este entuerto.-

en fin esto es lo que tengo:

Programacion ASP:

<!--#include file="conexiones.asp"-->
<%
rut=request.Form("Usuarios")
dv=request.Form("DV")
nombre=request.QueryString("nombre")
sga=request.QueryString("sga")
supervisor=request.QueryString("supervisor")


if rut<>"" and Dv<>"" then
set cmd= server.CreateObject("ADODB.recordset")
cmd.activeconnection=cnn
'sql1="exec insertar '"&pro&"','"&rut3&"','"&movil&"','"&cros&"'"
sql="exec InsAltaUsuarios '"&nombre&"','"&sga&"','"&supervisor&"','"&platafo rma&"'"
cmd.source=sql
cmd.open
rut=""
Dv=""
end if

%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Alta Usuarios Cross Selling</title>
</head>
<script language="javascript">
<!-- Funcion para colocar solo numeros en un formulario mis_datos()
function mis_datos(){
var key=window.event.keyCode;
if (key < 48 || key > 57){
window.event.keyCode=0;
}}
//-->
</script>
<body>

<form name="AltaUsuarios">
<table>
<tr>
<td>Rut: </td>
<td><input name="rut" type="text" id="rut" onkeypress="mis_datos()"size="8" maxlength="8" />
-
<input name="Dv" type="text" id="Dv" size="3" maxlength="1" /></td>
</tr>
<tr>
<td>Nombre + Apellidos: </td>
<td><input name="nombre" type="text" size="30" maxlength="100" /></td>
</tr>

<tr>
<td>Usuario SGA: </td>
<td><input name="Sga" type="text" id="Sga" value="Tp_" size="30" maxlength="100" /></td>
</tr>

<tr>
<td>Supervisor:</td>
<td>
<select name=supervisor>
<option value="Cta_Controlada">OSCAR RUZ
<option value="Cta_Controlada">CAROL DONOSO
<option value="Cta_Controlada">NATALIA MAULEN
<option value="Cta_Controlada">GONZALO RODRIGUEZ
<option value="Suscripcion_AV">LORENA SILVA
<option value="Suscripcion_AV">DANIEL CANIHUANTE
<option value="Suscripcion_AV">SEBASTIAN QUEZADA
<option value="Monitor_CX">MIXI ARMIJO
<option value="Prepago">CLAUDIA LEON
<option value="Prepago">ELIZABETH PEZOA
<option value="Prepago">RODRIGO ACEVEDO
<option value="Prepago">JOCELYN BENAVENTE
<option value="Pyme-C">RICHARD VEGA
<option value="Pyme-C">NATALIA ARAYA
<option value="Pyme-C">CLAUDIO ASTETE
<option value="Suscripciones">RUBEN LUNA
<option value="Suscripciones">PAULINA SOTO
<option value="Suscripciones">WILLIAMS GUERRA
</select>
</td>
</tr>
<tr>
<td>Plataforma: </td>
<td>
<select name=plataforma>
<option value="Cta_Controlada">CUENTA CONTROLADA
<option value="Suscripcion_AV">DESB. SUSCRIPCION ALTO VALOR
<option value="Monitor_CX">MONITOR CROSS SELLING
<option value="Prepago">PREPAGO INTEGRAL
<option value="Pyme">PYME-C
<option value="Suscripcion">SUSCRIPCIONES
</select>
</td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" name="enbiar" id="enviar" onclick="this.form.submit();" value="Enviar">

</table>
</form>

Procedimiento Almacenado (SP) en SQL:

USE [TEST_DATABASE]
GO
/****** Object: StoredProcedure [dbo].[InsAltaUsuarios] Script Date: 05/11/2011 10:49:52 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[InsAltaUsuarios](@Rut nvarchar(50),@Dv nvarchar(50),@SGA nvarchar(255),@Nombre nvarchar(255), @Supervisor nvarchar(255), @Plataforma nvarchar(255),@Password nvarchar(10))
As
insert into usuarios(RUT,DV,SGA,NOMBRE,SUPERVISOR,PLATAFORMA,P ASSWORD) values (@Rut,@Dv,@SGA,@Nombre,@Supervisor,@Plataforma,'tp chile')


Mil GRACIAS
SALUDOS
CRISTIAN S.
  #2 (permalink)  
Antiguo 12/05/2011, 21:53
Avatar de mc_quake  
Fecha de Ingreso: enero-2006
Ubicación: www.ecocargo.cl
Mensajes: 683
Antigüedad: 18 años, 3 meses
Puntos: 8
Respuesta: Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL

1 para verificar si existe el rut sugiero crear un quary en el cual tenga como condicion rut e div igual al campo rut y div enviado del formulario

y hagas un if con la propiedad record.count

y la para la clave aleatoria usa la funcion Randomize, para crear una clave y pasarsela por parametro a tu SP de insert
__________________
Mc_Quake

Para ayudar en lo que se pueda:Zzz:
  #3 (permalink)  
Antiguo 15/05/2011, 01:55
Avatar de Joch_pa  
Fecha de Ingreso: octubre-2009
Ubicación: Pachuca De Soto, Hidalgo, Mexico, Mexico
Mensajes: 122
Antigüedad: 14 años, 6 meses
Puntos: 7
Respuesta: Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL

como sugerencia y un poco de seguridad, utiliza el envio de los datos por el form

<form name="x" method="post">

y recuperalos por request.form

y en tu SP agrega o modifica con algo asi para la validacion del rut


Código SQL:
Ver original
  1. ALTER PROCEDURE dbo.InsAltaUsuarios
  2.      @Rut nvarchar(50)
  3.     , @Dv nvarchar(50)
  4.     , @SGA nvarchar(255)
  5.     , @Nombre nvarchar(255)
  6.     , @Supervisor nvarchar(255)
  7.     , @Plataforma nvarchar(255)
  8.     , @Password nvarchar(10)
  9. AS
  10.  
  11. IF EXISTS(SELECT rut FROM usuarios WHERE rut=@Rut)
  12. BEGIN
  13.       --rut repetido
  14.       SELECT 'rut repetido'
  15. END
  16. ELSE
  17. BEGIN
  18.       --rut nuevo
  19.      INSERT INTO usuarios
  20.               (RUT,DV,SGA,NOMBRE,SUPERVISOR,PLATAFORMA,P ASSWORD)
  21.      VALUES
  22.               (@Rut,@Dv,@SGA,@Nombre,@Supervisor,@Plataforma,@Password )
  23.      SELECT @Password
  24. END
  25.  
  26. GO
ya con eso, en tu ASP modificarlo mas o menos asi

Código ASP:
Ver original
  1. rut = request.Form("Usuarios")
  2. Dv = request.Form("DV")
  3. Nombre = request.form("nombre")
  4. SGA = request.form("sga")
  5. Supervisor = request.form("supervisor")
  6. Plataforma = request.form("plataforma")
  7.  
  8. if rut<>"" and Dv<>"" then
  9.     pass = generapass()
  10.     set cmd= server.CreateObject("ADODB.recordset")
  11.     strSQL = "exec InsAltaUsuarios '" & rut & "','" & Dv & "','" & SGA & "','" & Nombre & "','" & Supervisor & "','" & Plataforma & "','" & pass
  12.     cmd.open strSQL , cnn
  13.     if not cmd.eof then
  14.         regresa = cmd(0)
  15.         if regresa = "rut repetido" then
  16.             'rut repetido, mostrar que esta repetido
  17.             response.Write "El rut esta repetido, favor de reintentar"
  18.         else
  19.             'se inserto el rut, mostrar el pass generado
  20.             response.Write "insercion correcta, el pass es : " & regresa
  21.         end if
  22.     end if
  23. end if


recuerda que los parametros pasados el SP, deben de ir en el mismo orden en el que son declarados y sin omitir alguno, si alguna variable se viene vacia, lo tienes que validar antes de abrir el cmd, para que no te genere error.

la funcion generapass() la tienes que generar tu.

espero te halla ayudado un poco, si tienes problemas postealos en este mismo post
  #4 (permalink)  
Antiguo 03/03/2012, 17:35
 
Fecha de Ingreso: marzo-2012
Ubicación: Solo privado por fabor
Mensajes: 3
Antigüedad: 12 años, 1 mes
Puntos: 0
Respuesta: Insertar datos de usuaros desde ASP a una Tabla de usuarios en SQL

te sgiero que realizes una prueba en sql server y porteriormente lo realizar con el cofigo en asp no se cual sea el fin de insertar un procedimiento almacenado en asp pero solamente tu sabes
saludos jemp_intrepido
www.itixmih.wordpress.com

Etiquetas: asp, sql, tabla, usuarios
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

SíEste tema le ha gustado a 1 personas




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