domingo, 2 de noviembre de 2008

Pasar valores de variables como parametros - variables URL




Para pasar las variables de una página a otra lo podemos hacer introduciendo dicha variable dentro del enlace hipertexto de la página destino. La sintaxis sería la siguiente:

<a href="destino.php?variable1=valor1&variable2=valor2&...">Mi enlace</a>

Podéis observar que estas variables no poseen el símbolo $ delante. Esto es debido a que en realidad este modo de pasar variables no es específico de PHP sino que es utilizado por otros lenguajes.

Ahora nuestra variable pertenece también al entorno de la página destino.php y está lista para su explotación.

Nota: No siempre se definen automáticamente las variables recibidas por parámetro en las páginas web, depende de una variable de configuración de PHP: register_globals, que tiene que estar activada.

Para aclarar posibles dudas, veamos esto en forma de ejemplo. Tendremos pues dos páginas, origen.html (no es necesario darle extensión PHP puesto que no hay ningún tipo de código) y destino.php:

<HTML>
<HEAD>
<TITLE>origen.html</TITLE>
</HEAD>
<BODY>

<a href="destino.php?saludo=$dato&texto=Esto es una variable texto">Paso variables saludo y texto a la página destino.php</a> //creamos el link que enviara los valores, si observamos bien estos valores pueden ser fijos como la cadena de texto o bien variables como $dato.

</BODY>
</HTML>


<HTML>
<HEAD>
<TITLE>destino.php</TITLE>
</HEAD>
<BODY>
<?
//imprimimos las variables
echo "Variable \$saludo: $saludo <br>\n";
echo "Variable \$texto: $texto <br>\n"

//o bien si la forma anterior no funciona, tendremos que obtener dichas variables explicitamente, esto a traves del metodo get como se ilustra a continuacion:
//reciviendo las variables url
$var1=$_GET[saludo];
$var2=$_GET['texto'];
//imprimimos los valores
echo "Variable saludo:$var1, variable texto:$texto ambas fueron recividas via url";

?>
</BODY>
</HTML>