Enviando formas mediante ligas
Posted on February 5th, 2009 in ArtÃculos, Programación | No Comments »
Recientemente en el foro preguntaron sobre como enviar información almacenada en una forma utilizando una liga lo cual puede ser bastante útil cuando queremos crear mayor interacción o personalización de nuestras formas o darle funcionalidades más interesantes a nuestra página.
Esto es muy sencillo utilizando un poco de javascript.
Tenemos que crear la forma en donde contendremos los campos que utilizaremos. El código que va a enviar la forma en la liga lo colocaremos en la acción onclick de la misma.
Es importante colocar el código return false; ya que si no lo tiene después de intentar enviar la forma el navegador se dirigirá a la liga lo que puede generar resultados no esperados.
Nuestra página forma.html quedarÃa de la siguiente forma:
<html>
<body>
<form method=”POST” action=”prueba.php?valor3=a” name=”forma01″>
<a href=”#” onclick=”document.forma01.submit();return false;”>Liga 1 </a>
<input type=”hidden” name=’valor1′ value=”1″ />
<input type=”text” name=’valor2′ value=”Gato” />
</form>
</body>
</html>

En nuestra página prueba.php la cual estamos diseccionando en nuestra forma podemos recibir los valores que enviamos por la URL y por la forma:
prueba.php
<?php
if($_POST){ //Si le dimos clic a la liga
print_r($_POST); //variables enviadas en la forma
}
print_r($_GET); //valiables enviadas en la liga
?>
Al dar clic en nuestra liga la página prueba.php nos mostrará toda la información que enviamos:

Si quisiéramos enviar todos los datos por la URL simplemente tendrÃamos que cambiar el método en la forma:
<form method=”GET”
Por lo que al enviar nuestra forma en la URL veremos únicamente la información de la forma en la liga:



