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

me duplica los campos por favor ayuda!!!

Estas en el tema de me duplica los campos por favor ayuda!!! en el foro de ASP Clásico en Foros del Web. hola tengo una pagina que ingresa o atualiza datos de una base en access. el problema es que cuando inserto datos nuevos me los graba ...
  #1 (permalink)  
Antiguo 15/07/2008, 10:38
 
Fecha de Ingreso: marzo-2008
Mensajes: 25
Antigüedad: 16 años, 2 meses
Puntos: 0
me duplica los campos por favor ayuda!!!

hola tengo una pagina que ingresa o atualiza datos de una base en access. el problema es que cuando inserto datos nuevos me los graba 2 veces y no encuentro el error? les dejo el codigo

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!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">
<!--#include file="connect.inc"-->
<%
if Session("aut")<>True then
response.Redirect("index.asp")
end if
if Request.Form("txtaction")="N" then
response.Redirect("presentacion.asp")
end if
Response.Buffer=true
Response.Expires=0
txtid=request.QueryString("txtid")
ID=request("txtid")
IDSit=request("txtidsit")
Nombre=request("Nombre")
Descripcion=request("Descripcion")
promo = ""

'///////////////////////////////////////////////////////////////
'Actualizar situacion
if Request.Form("txtaction")="G" and IDSit <> "" then
if Nombre<>"" then
strSQLI="UPDATE PROMOCIONES set PRO_DESCRIPCION='"& Descripcion &"', PRO_NOMBRE='"&Nombre&"' Where ID_PROMOCION="& IDSit
Conexion.BeginTrans()
Conexion.Execute(strSQLI)
Conexion.CommitTrans()
promo=">> LA Propiedad fue Actualizada <<"
else
promo=">> CAMPOS INCOMPLETOS Y/O INCORRECTOS 2<<"
end if
end if

'Almaceno registro nuevo de situacion
if Request.Form("txtaction")="G" and IDSit="" then
if Nombre<>"" then
strSQLI="INSERT INTO PROMOCIONES (PRO_NOMBRE, PRO_DESCRIPCION) VALUES ('"& Nombre &"','"& Descripcion &"')" strSQLID="SELECT MAX(ID_PROMOCION)AS MAXIMO FROM PROMOCIONES"
set objrsi=server.CreateObject("ADODB.Recordset")
Conexion.BeginTrans()
Conexion.Execute(strSQLI)
set objRSID=Conexion.Execute(strSQLID)
Conexion.CommitTrans()
IDSit=objRSID.Fields("MAXIMO")
promo=">> La Propiedad fue Registrada <<"
else
promo=">> CAMPOS INCOMPLETOS Y/O INCORRECTOS <<"
end if

end if
'Datos obtenidos de busqueda
if ID <> "" then
strSQL="SELECT * FROM PROMOCIONES WHERE ID_PROMOCION="& ID
set objrs=server.CreateObject("ADODB.Recordset")
objrs.Open strSQL, Conexion
while not objrs.eof
Nombre=objRS.Fields("PRO_NOMBRE")
Descripcion=objRS.Fields("PRO_DESCRIPCION")
IDSit=objRS.Fields("ID_PROMOCION")
objrs.movenext
wend
End if

'///////////////////////////////////////////////////////////////
%>
<script language="JavaScript" type="text/JavaScript">
function guardar()
{
frm.txtaction.value="G";
frm.submit();
}
function nuevo()
{
frm.txtaction.value="N";
txtid = ""
PRI_CODPRO.value=""
frm.submit();
}
</script>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Rehdicon - Control Panel</title>

<link href="estilo.css" rel="stylesheet" type="text/css" />
<script src="../Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<body>
<div class="Encabesado">
<script type="text/javascript">
AC_FL_RunContent( 'codebase','http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0','width','800','heigh t','109','title','Encabezadp','src','../flash/encabezado','quality','high','pluginspage','http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash','movi e','../flash/encabezado' ); //end AC code
</script><noscript><object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="800" height="109" title="Encabezadp">
<param name="movie" value="../flash/encabezado.swf" />
<param name="quality" value="high" />
<embed src="../flash/encabezado.swf" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="800" height="109"></embed>
</object>
</noscript></div>
<div class="cuerpo">
<div class="izq">
<p><a href="#">Promoción</a><br />
<a href="ubicacion.asp?txtid=<%=txtid%>">Ubicación</a><br />
<a href="foto.asp?txtid=<%=txtid%>">Foto Principal</a><br />
<a href="planos.asp?txtid=<%=txtid%>">Planos</a><br />
<a href="galeria.asp?txtid=<%=txtid%>">Galeria</a><br />
<a href="calidades.asp?txtid=<%=txtid%>">Calidades</a><br />
<a href="video.asp?txtid=<%=txtid%>">Video</a></p>

</div>
<div class="der">
<form action="" method="post" name="frm" id="frm">
<fieldset>
<legend>INFO DE LA PROMOCION</legend>
<label for="nombre">Nombre:</label>
<input name="nombre" type="text" id="nombre" value="<%=Nombre%>" size="30" />
<br /><br />
<label for="descripcion">Descripcion:</label>
<textarea name="descripcion" cols="30" rows="10" id="descripcion"><%=Descripcion%></textarea>
<input name="txtaction" type="hidden" id="txtaction" />
<input name="txtid" type="hidden" id="txtid" value="<%=ID%>" />
<input name="txtidsit" type="hidden" id="txtidsit" value="<%=IDSit%>" />
<p>
<input name="Submit" type="submit" class="select1" value="Guardar" onclick="guardar();" />
<%=promo%> </p>
</fieldset>
</form>
</div>
</div>
</body>
</html>
  #2 (permalink)  
Antiguo 16/07/2008, 11:18
Avatar de JuanRAPerez
Colaborador
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.393
Antigüedad: 20 años, 7 meses
Puntos: 27
Respuesta: me duplica los campos por favor ayuda!!!

estas duplicando post?

http://www.forosdelweb.com/f15/inser...etidos-604686/
__________________
JuanRa Pérez
San Salvador, El Salvador
  #3 (permalink)  
Antiguo 16/07/2008, 18:55
 
Fecha de Ingreso: julio-2008
Mensajes: 1
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: me duplica los campos por favor ayuda!!!

if Request.Form("txtaction")="G" and IDSit="" then
if Nombre<>"" then
strSQLI="INSERT INTO PROMOCIONES (PRO_NOMBRE, PRO_DESCRIPCION) VALUES ('"& Nombre &"','"& Descripcion &"')" strSQLID="SELECT MAX(ID_PROMOCION)AS MAXIMO FROM PROMOCIONES"
set objrsi=server.CreateObject("ADODB.Recordset")
Conexion.BeginTrans()
Conexion.Execute(strSQLI)
set objRSID=Conexion.Execute(strSQLID)



si te das cuenta esta ejecutando dos veces el mismo query de insersion:

1. Conexion.Execute(strSQLI)
2. set objRSID=Conexion.Execute(strSQLID)
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 12:27.