Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/01/2011, 15:06
Avatar de uikekarallo
uikekarallo
 
Fecha de Ingreso: diciembre-2009
Ubicación: Galicia
Mensajes: 338
Antigüedad: 14 años, 10 meses
Puntos: 16
Respuesta: Envío de datos por formulario como nombre de pagina y nombre del link

entiendo. como te he dicho, sería más cómodo que utilizases php en lugar de html tanto para la página actual como para el link del que proviene.

si tiene que ser en html por fuerza, utilizaremos javascript, siendo un poco más complejo:

Código HTML:
<!-- recogemos la ruta de la primera página con javascript y se lo añadimos al ancla para enviarla a la página del formulario -->

<script type="text/javascript">
window.onload = function()
{
	var pag = location.pathname.slice(1);

	var menu1= document.getElementById('menu1').href +'?pag='+ pag;
	document.getElementById('menu1').href = menu1;

	// para más enlaces, repetimos las 2 últimas líneas cambiando menu1 por menu2, etc.
}
</script>

<!-- este es el link que va al formulario. le damos un id único a cada enlace que vaya al formulario  -->

<a id="menu1" href="1-2.html">ir al formulario</a> 
ya tenemos la primera página, la que enlaza al formulario. ahora toca recogerla en la página del formulario:

Código HTML:
<script type="text/javascript">
window.onload = function()
{
	// este código lo extraje de algún sitio, pero no recuerdo de donde... sirve para recoger una o más variables

	var uri = location.href;
	uri = uri.replace(/.*\?(.*?)/,"$1");
	variables = uri.split ("&");

	for( i=0 ; i<variables.length ; i++ )
	{
		sep = variables[i].split("=");
		eval ('var '+sep[0]+'="'+sep[1]+'"');
	}

	// recogemos el nombre de la página actual (la segunda) y ya tenemos el nombre de las 2 páginas

	var pag = pag;
	var pag2 = location.pathname.slice(1);

	// toca añadir los valores de estos variables a unos inputs hidden del formulario

	document.getElementById('pagina1').value = pag;
	document.getElementById('pagina2').value = pag2;
}
</script>

<!-- y el formulario también tiene que tener sus ids únicas -->

<form ...>
  <input id="pagina1" name="pagina1" type="hidden" value="" />
  <input id="pagina2" name="pagina2" type="hidden" value="" />
</form> 
y después de todo esto, sólo tienes que recoger los valores en el php

Código PHP:
  $pag1 $_POST['pagina1'];
  
$pag2 $_POST['pagina2']; 
y si no me he liado, creo que está todo correcto. repito que con php sería mucho más sencillo, pero bueno, ahora ya está hecho con javascript.

un saludo.