Código PHP:
<?php
url::$P = $_GET[p];
class url
{
public static $P;
public static $getVars=array();
public static $fileRequired;
public static function getPage()
{
$args = func_get_args();
$nom = md5($args[0].rand(1,999));
setcookie("p:{$nom}",implode("|",$args));
self::$fileRequired = $args[0];
return $nom;
}
public static function pageIn()
{
$nom = self::$P;
if(isset($_COOKIE["p:{$nom}"]))
{
$Data = $_COOKIE["p:{$nom}"];
foreach(explode("|",$Data) as $Id => $Value)
{
$exp = explode(":",$Value);
if(count($exp)==2)
self::$getVars[$exp[0]] = $exp[1];
}
}
else
{
main::Error(1002);
}
}
}
unset($_GET);
url::pageIn();
$_GET = url::$getVars;
?>
Funciona de la siguiente forma:
- Uso el siguiente código:
Código PHP:
<?php url::getPage("potocagao.php","idAlumno:10","idCitacion:5"); ?>
-
Código PHP:
<?php url::pageIn(); ?>
- Unseteo la variable $_GET , porq logicamente a través del código se estableceran los supuestos valores de $_GET.
Bueno, el código funciona perfecto... pero uno de los puntos negativos es que cae en ser inseguro... porque a pesar de estar cifrado en md5, es cuestión de que el usuario tenga un programa para ver las cookies del navegador y va a saber que datos contiene el asunto... Podría usar sesiones. Pero el punto no es ese.
El tema va en que si uso Cookies y/o Sesiones dependerá todo del navegador del usuario y además rellenaria el pc con coookies. Por ejemplo, si el usuario revisa 100 paginas del sitio, habrá creado el script 100 cookies...
Había pensado en crear un archivo en el servidor que tenga el nombre en md5, pero rellenaria mi servidor con cientos de archivos...
También habia pensado en MySQL... pero saturaria la base de datos, imaginense unos 1000 usuarios al dia, que cada uno visite 10 paginas... llenaria en un dia la base de datos con 10.000 registros... y al mes 300.000... demasiado.
¿ALGUIEN TIENE OTRA SOLUCIÓN?