$ _GET只收取'ID'

时间:2011-04-06 00:55:31

标签: php string iframe get

我有一个非常奇怪的问题,或者我可能会忽略一些非常简单的事情。

我有一个网址:http://sub.domain.com.au/q/quote-step-two/?id=228&optionid=278

我无法在php中获得'optionid'。

所以试试这个我试过了:

echo "\$optid =". $optid ; // empty
echo "get =" . $_GET['optionid']; // empty 
var_dump($_GET); //array(1) { ["id"]=> string(3) "228" } 
如果我将网址更改为:

,那么奇怪的是

sub.domain.com.au/q/quote-step-two/?optionid=278

甚至

sub.domain.com.au/q/quote-step-two /

var_dump($_GET)给了我array(1) { ["id"]=> string(0) "" }

如果我在httpfox上查找网址,则会显示2个获取变量。

这是htaccess

  RewriteEngine on

  RewriteCond %{REQUEST_FILENAME} !-f

  RewriteCond %{REQUEST_FILENAME} !-d

  RewriteCond %{REQUEST_URI} !=/favicon.ico

  RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]

目前这是有效的,如果我q / quote-step-two / 228。我怎么得到它来拿起第二个参数?比如q / quote-step-two / 228/227 /

2 个答案:

答案 0 :(得分:0)

试试这个......

$q = $_GET["q"];
unset($_GET["q"]);

$gets = explode("&", $q);

foreach($gets as $get){
    $get = explode("=", $get);
    $_GET[$get[0]] = $get[1];
}

print_r($_GET);

更新

$uri = $_SERVER["REQUEST_URI"];

$uri = explode("?", $uri);

if(!empty($uri[1])){
    $gets = explode("&", $uri[1]);
        foreach($gets as $get){
            $get = explode("=", $get);
            $_GET[$get[0]] = $get[1];
        }
}

print_r($_GET);

答案 1 :(得分:0)

好好经过多次吹头发,这就是问题所在。

即使父页面在查询字符串上有第二个参数,但页面中嵌入的iframe网址只有id,即使父网址为空,它也显示'id =',

我只是复制并将父查询字符串添加到ifram路径。并修复了问题