Zona HTML Zona Java Zona PHP Zona ASP Zona Bases de datos
Inicio > Foros > ASP > Problemas con FORM, creo...
-Foros de debate

ASP
Lista de foros | Lista de mensajes de este foro

Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.

Problemas con FORM, creo...
Enviado por Gigatron el día 8 de julio de 2004

Bueno yo tengo esta pagina, su funcion principalmente deveria ser la de escrivir en un formulario los datos de un producto, seleccionar las imagenes del producto en tu disco duro y al mandar el formulario los datos los procesa la misma pagina, subiendo por un lado el archivo del formulario en el servidor y añadiendo el resto de campos de texto a la base de datos.

El caso es que lo unico que me hace es subir las imagenes al servidor, despues de hacer varias pruevas he llegado a la conclusión de que el formulario no envia los valores de los campos, solo envia los valores del campo file (del archivo). Y creo que es por esto enctype="multipart/form-data"

Estoy muy desesperado, he hecho un monton de cosas pero nada.
Si he de aclarar algo mas sobre el codigo y lo que pretendo, no duden en decirmelo, es muy importante que pueda hacer esto.

(añadirproducto.asp)

<%
option explicit
Response.Expires = -1
Server.ScriptTimeout = 600
%>
<!-- #include file="freeaspupload.asp" -->
<%

Dim uploadsDirVar
uploadsDirVar = Server.mapPath("./")

Function SaveFiles
Dim Upload, ks, resumen
Set Upload = New FreeASPUpload
Upload.Save(uploadsDirVar)
If Err.Number <> 0 then Exit function
ks = Upload.UploadedFiles.keys
if (UBound(ks) = -1) then resumen = "No es un nombre valido en el sistema."
SaveFiles = resumen

Dim oConn2, rs
Set oConn2 = Server.CreateObject("ADODB.Connection")
set rs=Server.CreateObject("ADODB.Recordset")
oConn2.Open("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("esto no creo que importe.mdb"))

set rssql_nuevo=oconn2.execute("insert into Productos (marca,nombre,descripcion,precio,precioclientes1,p recioclientes2,nsubcategoria) values ('"& (request.form("marca")) & "','"& (request.form("nombre")) & "','"& (request.form("descripcion")) & "','"& (request.form("precio")) & "','"& (request.form("precioclientes1")) & "','"& (request.form("precioclientes2")) & "','"& (request.form("nsubcategoria")) & "')")

end function
%>

<html>
<head>
<title>Insertar Productos</title>
<link href="../Estilos/estilo1.css" rel="stylesheet" type="text/css">
</head>
<body class="body">
<table width="100%" height="100%" border="1" align="center" cellpadding="2" cellspacing="0" bordercolor="#999999" bgcolor="#000000">
<tr>
<td align="center" valign="top" class="texto">
<b>Agregar Producto:</b><br>
<p>Agrege los Productos de Z-Bombilla.
<br>Desde esta pagina usted podra ingresar un nuevo producto en la base de datos de Z-Bombilla.</p>

<form name="frmSend" method="POST" enctype="multipart/form-data" action="añadirproducto.asp">
<table width="400" border="0" cellpadding="0" cellspacing="0">
<tr>
<td width="120" class="texto2">Marca:</td>
<td><b>
<input name="marca" type="text" class="box" id="marca" size="30">
</b></td>
</tr>
<tr>
<td class="texto2">Nombre:</td>
<td><b>
<input name="nombre" type="text" class="box" id="nombre" size="30">
</b></td>
</tr>
<tr>
<td valign="top" class="texto2">Descripcion:</td>
<td><b>
<input name="descripcion" type="text" class="box" id="descripcion" size="30">
</b></td>
</tr>
<tr>
<td class="texto2">Precio (&euro;):</td>
<td><b>
<input name="precio" type="text" class="box" id="precio" size="30">
</b></td>
</tr>
<tr>
<td class="texto2">Precio Clientes 1 (&euro;):</td>
<td><b>
<input name="precioclientes1" type="text" class="box" id="precioclientes1" size="30">
</b></td>
</tr>
<tr>
<td class="texto2">Precio Clientes 2 (&euro;):</td>
<td><b>
<input name="precioclientes2" type="text" class="box" id="precioclientes2" size="30">
<input name="nsubcategoria" type="hidden" id="nsubcategoria" value="<% =Request.QueryString("Id") %>">
</b></td>
</tr>
<tr>
<td class="texto2">Foto 1:</td>
<td><b>
<input name="attach1" type="file" size="17" class="box">
</b></td>
</tr>
<tr>
<td class="texto2">Foto 2:</td>
<td><b>
<input name="attach2" type="file" size="17" class="box">
</b></td>
</tr>
<tr>
<td height="5" class="texto2"> <input name="imageField" type="image" src="Imagenes/spacer.gif" width="1" height="1" border="0">
</td>
<td height="5"> <input name="imageField2" type="image" src="Imagenes/spacer.gif" width="1" height="1" border="0"></td>
</tr>
<tr>
<td class="texto2"><input name="Submit" type="submit" class="botonBuscar" value="Aceptar"></td>
<td><input name="Submit2" type="reset" class="box" value="Restablecer"></td>
</tr>
</table>
</form>
</td></tr></table>
<%
'solo llamo al UPLOAD si hay envio de formulario
if Request.ServerVariables("REQUEST_METHOD") = "POST" then
response.write SaveFiles()
end if
%>
</body>
</html>

 
Re: Problemas con FORM, creo...
Enviado por nimai el día 11 de septiembre de 2004

bueno no pones la pagina a la que llega la informacion pero creo que el problema deve de estar en la forma en la que recibes los datos

request.form("nombre de las cajas de texto") para el metodo get y
request.querystring("nombre de las cajas de texto") para el metodo post

 

Re: Una prueva...
Enviado por uno el día 5 de noviembre de 2004

<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
<head>
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
</head>

 

Re: Problemas con FORM, creo...
Enviado por Anónimo el día 5 de noviembre de 2004

Es cierto que con multipart/form-data no sirve el método Request.
Puedes usar el componente aspsmartupload (http://www.aspsmart.com/) y podrás recoger la información del fichero, en este caso imágen y los demás campos.
Es muy fácil de usar, creo que las instrucciones son muy claras y es gratuito.

Suerte

 
Re: Re: Problemas con FORM, creo...
Enviado por Josep el día 26 de enero de 2006

Puede que no sea la mejor solución, pero yo lo he solucionado con la creación de una Session.

De todas formas sólo tenia que pasar un único campo, por lo que no creo que cargue en exceso el servidor con una Session de más.

Me explico:

En la página en la que tengo el formulario he hecho
Session(\\\"ubicacion\\\")=carpeta
Dónde \\\"carpeta\\\" es una variable que recoge el valor de un campo del formulario

En la página que recibe los datos he hecho
c=Session(\\\"ubicacion\\\")
Luego con c (variable en la que tengo el valor del campo del formulario) ya puedo hacer lo que quiera.

Si alguien cree que no es una solución adecuada, le rogaría que me lo digera para no tener problemas en un futuro.

Saludos.

 


Re: Problemas con FORM, creo...
Enviado por gastonnn el día 11 de abril de 2006

El formulario que envias es multipart/form-data con eso le dices al servidor que estas procesando Bytes, lo solucion es sencilla tienes que hacer 2 paginas una primera pagina es la que toma los datos que quieres insertar, una vez que le agregas los datos envias el formulario, la 1 pagina se encarga de procesar los datos y agregar el registro a la base de datos.
Si todo funciona bien, automaticamente pasas a la 2 pagina con un response.redirect "2pagina.asp"
Tomas el ID del registro ingresado

dim strID
strID = Request.QueryString("ID")

y en esta segunda pagina agregas la imagen,
cuando termina de subir la foto o imagen, editas
el registro y le agregas la direccion donde se
encuentra la imagen.
Gaston Nat
gastonmardelplata@gmail.com

 

Re: Problemas con FORM, creo...
Enviado por pikeba el día 4 de mayo de 2006

en lugar de utilizar Request.Form, utiliza upload.Form("dato") aver que tal

 
Re: Re: Problemas con FORM, creo...
Enviado por gastonnn el día 6 de junio de 2006

Si aparentemente funciona como dices es mas practico todavia sin tener que pasar tantas variables.
Saludos

 
Re: Re: Re: Problemas con FORM, creo...
Enviado por cecuray el día 7 de julio de 2008

solo debes cambiar el encabezado de tu form por:
<%
Id = TUVARIABLE
response.write "<FORM ACTION=""TUPAGINAalaqueenviaslosdatos.asp?elIDquedeseasenviar="%=Id&"" METHOD=""POST"" ENCTYPE=""multipart/form-data"">"%>

 




Tienda
Patrocinados
 

Copyright © 1999-2006 Programación en castellano. Todos los derechos reservados.
Formulario de Contacto - Datos legales - Publicidad

Hospedaje web y servidores dedicados linux por Ferca Network