Pasar siempre informacion por GET

Iniciado por XafiloX, 5 Agosto 2009, 17:56 PM

0 Miembros y 1 Visitante están viendo este tema.

XafiloX

Hola, me gustaria saber si hay alguna manera de pasar siempre una informacion por GET de manera automatica... Me parece que va a ser que no hay, pero es que si existiese eso me ahorraria mucho trabajo...  :)

SnakeDrak

Hola,

No entiendo tu pregunta, si quieres pasarlo por GET pues en el formularo pones GET o en las cabeceras o según cómo estés enviando los datos.

Si lo que quieres es que aunque sean mandadas por POST sean tratadas como $_GET podrías hacer al principio del código:

Código (php) [Seleccionar]

foreach($_POST as $name => $val){
 if(isset($_GET[$name]))
      continue;
 $_GET[$name] = $val;
}
unset($_POST);


De esa manera todos los POST serán GET, si eso no es lo que buscas trata de explicarte un poco mejor para poder ayudarte.

Este tema debería ir en PHP.

Saludos!

XafiloX

No lo he puesto en PHP porque a lo mejor la solucion se podia hacer por javascript, pero bueno, da = ...

A lo que me refiero es a alguna forma de mandar siempre una informacion por GET, sin tener que utilizar ningun formulario... Es decir, que siempre me añada, por ejemplo, ?user=1 a todas las direcciones en las que haga click desde esa pagina...

OzX


prova con

print_r($_REQUEST);


Asi parametros que pases POST, o GET, php lo capturara.


Saludos¡

SnakeDrak

Hola,

Con mod_rewrite en htaccess puedes hacerlo, aunque no entiendo mucho que quieres hacer:

Código (apache) [Seleccionar]

RewriteRule ^(.*)$ ./archivo.php?user=1 [L]


Con eso cualquier dirección contendría la variable GET user con valor 1, ahora sino puedes hacer:

Código (html4strict) [Seleccionar]

<a href="/archivo.php?user=1">Link</a>


¿Qué quieres lograr con esto? tal vez te entienda mejor si me explicas para qué lo vas a usar.

Saludos!

XafiloX

Pues es que yo tengo un juego online y lo estoy modificando para, con los mismos archivos, poder tener varias partidas funcionando sin tener que hacer una carpeta por cada partida...y la solucion era pasando por GET el id de la partida...

Gracias por la ayuda  ;)

SnakeDrak

Hola,

Para eso usa sesiones o cookies: http://es.php.net/manual/en/book.session.php

Haces que cuando el usuario entre elija un servidor o que lo elija una sola vez, ejemplo ./acceso.php?servidor=1

Código (php) [Seleccionar]

session_start();
if(isset($_GET['servidor']))
       $_SESSION['servidor'] = $_GET['servidor'];


Una vez que haya accedido en cualquier web que pongas session_start tendrás el número del servidor, hasta lo que dure la sesión:
Código (php) [Seleccionar]

session_start();
echo "Estás en el servidor ".$_SESSION['servidor'];


Mírate unas guías sobre las sesiones, también puedes hacerlo por cookies:

Código (php) [Seleccionar]

if(isset($_GET['servidor']))
      setcookie("servidor", $_GET['servidor'], time()+3600);  // expira en 1 hora


Y luego para leerla:

Código (php) [Seleccionar]

echo "Estás en el servidor ".$_COOKIE['servidor'];


http://es.php.net/manual/en/function.setcookie.php

Ojalá te sea de ayuda.

Saludos!