Objetivo
Esto es un complemente para el tema
Agregar una pagina a nuestro foro (test.php)
si deseas recibir parámetros por URL y según estos hacer alguna acción este tutorial te va a servir :p, usualmente se usa $_GET, pero vbulletin tiene sus propias funciones para hacerlo
Los parámetros por URL son estos
lo que hay que hacer, es capturarlos y según su contenido o valor, hacer alguna acciónCódigo PHP:test.php?parametro1=valor1¶metro2=valor2
Lo que debes saber:
vBulletin cuenta con una función para este caso
Código PHP:clean_gpc($source, $varname, $vartype = TYPE_NOCLEAN)
- $source = es el tipo de parámetro que se enviado, los valores posibles son: g, p, c, r, f (get, post, cookie, request y files), como vamos a recepcionar parámetros por URL, debemos usar el g
- $varname = Es el nombre del parámetro en la URL, en nuestro ejemplo seria parametro1 y parametro2
- $vartype = Aquí le indicamos que tipo de dato es el que debe devolvernos ese parámetro, los valores posibles son
- TYPE_BOOL - Booleano
- TYPE_INT - Entero
- TYPE_UINT - Entero sin signo
- TYPE_NUM - Punto Flotante (Real, float, double)
- TYPE_UNUM - Punto Flotante sin signo (Real, float, double)
- TYPE_UNIXTIME - Unix Timestamp (Entero sin signo)
- TYPE_STR - Cadena sin espacios en blanco a los lados
- TYPE_NOTRIM - Cadena
- TYPE_NOHTML - Cadena sin espacios en blancos enviado usando htmlspecialchars_uni()
- TYPE_ARRAY - Arreglo
- TYPE_FILE - Archivo
- TYPE_NOCLEAN - No valido
Haciendo un Ejemplo Practico
Vamos a usar el test.php pero modificándolo para que no use plantillas ni nada, solo código puro para que puedan hacer este tutorial rápido (no agregando plantillas, etc)
Aquí el archivo de ejemplo: (ejemplo.php)
cuando usas la función clean_gpc, guardas el resultado en una variable ($parametroenphp), pero adicionalmente se guarda en el arreglo $vbulletin->GPC['NOMBRE DE VARIABLE EN URL'] (ver ultima línea del código), así que tenemos 2 formas de obtener el datos :pCódigo PHP:<?
error_reporting(E_ALL & ~E_NOTICE);
define('THIS_SCRIPT', 'test');
// ########################## REQUERIDO ############################
require_once('./global.php'); //con esto cargas todas las opciones de vBulletin, además de la conexión, acceso a MySQL, etc, etc
// ######################## COMIENZO DEL SCRIPT PRINCIPAL ############################
$parametroenphp = $vbulletin->input->clean_gpc('g', 'parametro1', TYPE_STR);
$otroparametroenphp = $vbulletin->input->clean_gpc('g', 'parametro2', TYPE_STR);
echo $parametroenphp;
echo "<br />";
echo $vbulletin->GPC['parametro2'];
?>
asi que cuando hagasveras lo siguienteCódigo PHP:/ejemplo.php?parametro1=hola¶metro2=mundo
Anexo
Adicionalmente esta la función clean_array_gpc con lo que puedes obtener todos los parámetros con solo 1 línea y poder leerlos en $vbulletin->GPC['NOMBRE DE VARIABLE EN URL']
Nota (Usuarios Avanzados):Código PHP:$vbulletin->input->clean_array_gpc('r', array(
'puntos' => TYPE_ARRAY_UINT,
'puntos_anterior' => TYPE_ARRAY_UINT,
'usuario' => TYPE_STR,
));
//los guardo en variables independientes (no es obligatorio)
$puntos = $vbulletin->GPC['puntos'];
$puntos_anterior = $vbulletin->GPC['puntos_anterior'];
$usuario = $vbulletin->GPC['usuario'];
También puedes leer variables enviadas en formularios usando el metodo post sin ningún problema y usando el mismo código, aún sin usar el r como parámetro en $source
Temas Similares:


LinkBack URL
About LinkBacks
Responder Citando
