Sobre ASP - Paso de variables

Como puedo pasar un valor y recogerlo a través de distintas páginas.
Ejemplo:
Página Datos- (Muestra datos de cliente)
Tengo un campo oculto con el CodCliente.
Página Envío- Formulario para rellenar datos de envío. Aquí necesito recoger el Codcliente para pasarlo a la sisuiente página.
Página GrabarEnvío- Me graba los datos de envío y además tiene que grabarme el CodCliente que he ido pasando de una página a otra.

5 Respuestas

Respuesta
1
De un manera elegante:
De Página_Datos a Página_Envío pasas el valor en la URL (por ejemplo "Pagenvio.asp?CodCliente=<valor>"). En el formulario de Página_Envío añades <input type="hidden" name="CodCliente" value="<%=Request("CodCliente")%>">. Al hacer Submit se enviará el valor de ese campo a Página_GrabarEnvío.
Respuesta
1
Los datos los puedes pasar de una página a otra o bien con formularios o bien mediante enlaces.
En la primera página muestro los datos a modificar, para pasarlo a otra página, puedo usar un enlace:
<a href="formulario_edicion.asp?cliente=4">Editar datos</a>
Cuando estamos en el formulario de edicion, recogemos el valor "cliente".
<%
...
cliente = request.querystring("cliente")
...
%>
Y usamos este valor y lo metemos en un campo oculto que pertenezca al formulario de edición.
<input type="hidden" name="cliente" value="<%=cliente%>">
Luego en la página de grabación de datos, obtenemos los datos del formulario, entre ellos nuestro campo oculto.
<%
...
cliente = request.form("cliente")
...
%>
Respuesta
1
1- Si tienes el campo oculto en un formulario con method POST y envías este formulario a una página asp puedes recogerlo en esta con:
valor = request.form("nombre_campo")
2- Si lo tienes en un formulario con method=GET, o o pasas como parametro de la URL (llamas a http://tuservr/pag.asp?nombrecampo=valor):
valor = request.querystring("nombrecampo")
3- La tercera forma es que mantengas este valor en la session, cuando generas el código lo guardas en sesión y cuando lo necesites lo utilizas:
' guardar el id en la página que lo
' genera
Session("variabledesesion") = id
' leer id en las páginas siguientes
id = Session("variablesesion)
Respuesta
1
Antes de nada pedir disculpas por el retraso en responder. He estado con gripe unos días, sin poder salir de la cama.
Respecto a tu pregunta, como tú bien dices, la pregunta es de ASP y no de javascript. Los lenguajes como ASP y PHP están pensados para el manejo de variables entre páginas, variables de sesiones, etc... Por ejemplo si empleas PHP, si en un formulario envías un campo oculto con el nombre codCliente, automáticamente se genera una variable llamada $codCliente en la página que procesa el formulario.
No obstante, voy a responderte con un método que simula el funcionamiento de las páginas ASP o PHP.
Supón que tienes una página llamada "origen.htm" que tiene que pasar un valor codigo=1234 a la página llamada "destino.htm".
1.- Al hacer referencia a la página "destino.htm" desde "origen.htm" lo lógico sería emplear al go como:
<a href="http://www.tudominio.com/destino.htm">
Pero en lugr de eso vamos a enviar también el valor que quieres pasar, siguiendo el formato de lo que comúnmenete se llama "query sting":
<a href="http://www.destino.htm/?valor=1234">
2.- En la página destino deberás incluir una función javascript que permite obtener el valor pasado como query string:
<script language="javascript">
function cogerValor()
{
var query=unescape(document.location.href)
var query=query.split('?')[1]
var nombre=query.split('=')[0]
var valor=query.split('=')[1]
return valor
}
</script>
3.- Para obtener el valor tan sólo deberás emplear algo como
<script>valor=cogerValor()</script>
4.- Desde este momento la variable de javascript valor tendrá el valor pasado desde la página "origen.htm"
Por último vlover a recordarte de que si tienes acceso a servidores con PHP o ASP, puedes hacer esto mismo con tan sólo enviar el valor como un cqampo oculto de un formulario.
Espero que esto te aclare algo tus dudas. Si algo no te ha quedado claro, no dudes en preguntármelo.
Respuesta
Pues depende si es por URL o por un formulario.
Si es por URL usa
Request.QueryString("root")
donde root es el valor de recogida, es decir que si la URL fuera
index.asp?root=Jaime
recogerias como valor JAIME
ahora si es un formulario debes coger
Request.Form("root")
Donde root sera el value del INPUT donde está el código

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas