詳細検索

Obtenha PATH_INFO e atribua a ocultação

Avatar
por すがピー
2 min de leitura
Tags php

Obtenha PATH_INFO e atribua a ocultação
Traduzido do 日本語 • Ver original

Se você quiser anexar um parâmetro à URL e enviá-lo como um GET,

http://www.example.com/?param0=aaa&param1=bbb

Quando você me der e receber,

$param 0 = $_GET['param0']; 
$param 1 = $_GET['parám1']; 

ou

$param 0 = $_REQUEST['param0']; 
$param 1 = $_REQUEST['param1']; 

É comum fazer isso, mas o seguinte,

http://www.example.com/aaa/bbb/ 

e recebem o

$param = dividido("[/\.]", $_SERVER["PATH_INFO"]); 

Se sim, "aaa" é atribuído ao $param[0] e "bbb" ao $param[1].

Agora, se você tentar fazer isso no WordPress, vai tentar tratar "aaa" ou "bbb" como uma URL, e claro que ela não será exibida porque não tem permalink ou substance (se houver uma entidade, ela será exibida).

Parece que é melhor não usar PATH_INFO no WordPress, mas se for necessário, você pode criar um programa que aceite PATH_INFO independentemente do WordPress, e então passar os parâmetros para o WordPress de alguma forma.

A forma de recebê-la é como acima, então o resto é como passar, mas a maneira mais fácil é redirecioná-la com o GET.

$url = "URL de destino?param0=" . $param 0 . "&param1=" . $param 1; 
cabeçalho("HTTP/1.1 301 Movido Permanentemente"); 
cabeçalho("Localização: " . $url ); 

Se quiser ver parâmetros na URL do GET, também pode usar uma sessão.

session_start(); 

$_SESSION[ 'param0' ] = $param 0; 
$_SESSION[ 'param1' ] = $param 1; 

$url = "Migrar para URL; 
cabeçalho("HTTP/1.1 301 Movido Permanentemente"); 
cabeçalho("Localização: " . $url ); 

Se você puder usar cookies, tudo bem, mas se não puder,

cabeçalho("Localização: " . $url . "?" . session_name() . "=" . session_id() ); 

Você pode passar o ID da sessão no GET.

Related Articles