header("Location:http://www.xxx.com/a.php?id=3&title=word&category=bb");

解决方案 »

  1.   

    先把www.xxx.com/a.php?id=3&title=word&category=bb当做一个变量保存,然后登录后,就可以定向到这地址了.
      

  2.   

    //...
    //登录成功
    header("location:www.xxx.com/".$_GET[rurl]"."?id=3&title=word&category=bb");
    exit;
      

  3.   

    更正:
    header("location:www.xxx.com/".$_GET[rurl]."?id=3&title=word&category=bb");
      

  4.   

    //...
    //登录成功
    echo "<script>";
    echo "location.href=\"http:\/\/www.xxx.com/a.php?id=3&title=word&category=bb\"";
    echo "</script>";
      

  5.   

    to goodname(): 如果下次传来的变量名都变了呢。有没有一个统一的办法。 我自己的只能显示到www.xxx.com/a.php?id=3  "&后面的字符全部没了" 该怎样处理
      

  6.   

    为了便于测试,把你的问题做了点调整
    1、地址栏输入带参数的url,main.php?id=3&title=word&category=bb
    2、主文件判断参数$ok是否定义
    3、如没有定义则转向login.php
    4、login.php直接转回,但在url参数中增加ok=1
    5、main.php收到参数$ok,显示url。注意多了个ok=1main.php
    <?php
    $url = "login.php?rurl=".$_SERVER["URL"]."&".$_SERVER["QUERY_STRING"];
    if($_GET['ok'] != 1)
      header("Location: $url");
    echo $url."<br>";
    ?>login.php
    <?php
    $url = $_GET['rurl'] . eregi_replace(".*{$_GET['rurl']}&","?",$_SERVER["QUERY_STRING"])."&ok=1";
    header("Location: $url");
    ?>