[PHP] Arrastrar una variable

shako

Queria saber como hacer para arrastrar una variable ej: $departamento de una pagina a otra utilizando un <a></a> o alguna otra forma que no sea con un formulario...

basicamente eso no se si me explico bien tengo que arrastrar esa variable a otra pagina a la cual se accede por un <a href="#">

Addys

no se si te he entendido bien, entiendo que quieres pasar una variable de una página a otra, existen dos métodos por GET o por POST y ambas se almacenan (en php) en los arrays $GET[] y $POST[] respectivamente.

Lo más sencillo es que lo hagas por GET y es asi de sencillo

<a href=tuPagina.php?variable=valor>Haz click aquí</a>

luego en tuPagina.php

<?php
echo "Me has pasado $_GET[variable] por GET";
?>

Espero que te sirva de ayuda.

Saludos!

Addys

Se me olvidaba, puedes pasar más de un valor en la url juntandolos con el carácter &:

<a href=tuPagina.php?variable1=valor1&variable2=valor2&variable3=valor3&variable4....>

shako

osea que quede algo asi:

<a href="addnew.php?$hola=<?= $depto ?>">Hola</a> no me entero bien...

donde identifico el GET / POST por que quiero hacerlo por post x seguridad

Addys

por url es GET, y según tengo entendido para usar POST tienes que hacerlo a través de un formulario.

Por lo de la seguridad, si realmente es imperativo se me ocurren 3 opciones:

  1. Usar las variables de session ( http://es.php.net/manual/es/intro.session.php ) de esta manera además de evitar la manipulación de la variable (como en si se puede en la url) identificas al usuario por su sessión.

  2. Usar realmente un formulario y las variables a pasar las pones en campos hidden (poco seguro y fácil de "engañar" a la página de recepción de las variables POST)

  3. (La que usaría yo si no me apeteciese meterme en temas de sessiones) Pasar por GET (por url) las variables que necesite y luego pasar una más de redundancia con un cifrado md5 formado por una cadena que sólo tu sabes y las cadenas de las variables que estás pasando. Aquí puedes usar la imaginación como quieras desde lo mas sencillo: md5($variable1.$variable2."miPalabraSecreta"); a cosas más rebuscadas como cifrados dobles. Además luego puedes acortar la longitud de esta variable con substr(); y elegir que parte/partes de la cadena comprobar cuando te toque evaluar si han habido "cambios" en alguno de los valores de tus variables pasadas por GET.

Saludos!

shako

bueno tanto no me queria meter ahora voy ponerme a hacerlo x get ^^

pd: ya me funciona ^^

<a href="useraddnew.php?dpto=<?= $dpto ?>" class="fuerte">a&ntilde;adir noticia</a>
//
$dpto = $_GET['dpto'];

gracias

guner

Supongo que eso solo lo quieres hacer para un enlace, no?

NeB1

#7 de no ser así lo más correcto sería usar start_session(); y la variable $_SESSION

Usuarios habituales

  • NeB1
  • guner
  • shako
  • Addys