这个功能是在他请求的那个脚本中实现的,在那个只能登录浏览的脚本的最前面加上 判断用户是否登陆的函数,如果登录了,则继续执行该脚本,否则header到login.php

解决方案 »

  1.   

    to: ustcfrank(阿卡波糖) 
    关键是如何在header到login.php然后游客登陆
    登陆后如何又header到他最初请求的那个url去??
      

  2.   

    用$HTTP_REFERER
    “HTTP_REFERER”,链接到当前页面的前一页面的 URL 地址。不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是正确真实的。
      

  3.   

    HTTP_REFERER是从连接来的
    header来的可以吗?
      

  4.   

    偶喜欢用js跳转一般不会有什么问题。
    设置查看失败后用一个session变量保存当前的url,比如现在他访问的是down.php?id=12,把这个值记录进session变量后,跳转到登录页面,登录后取出session中的值,用js跳转
      

  5.   

    referer.php<?phpsession_start();
    echo $_SESSION['referer'];
    echo "这是最初请求的那个url页面";
    ?>
    <a href="login.php">登录</a>
    login.php<?php
    session_start();//这里加上你登录验证的语句
    //......
         if (session_is_registered("referer"))
             session_unregister("referer");
          session_register("referer");
          $referer = $HTTP_REFERER;
         header("Location: $referer");
          exit;
    ?>http://localhost/referer.php
    页面上显示:这是最初请求的那个url页面登录你点击一下“登录”页面显示变为:http://localhost/referer.php这是最初请求的那个url页面登录
      

  6.   

    to  feel8(准备早起的鸟)偶现在正学js,还没入门呢,买了本N厚的书,看的头都大了,都不知从何学起了,呵呵
      

  7.   

    To: feel8(准备早起的鸟)
    如何记忆比如“down.php?id=3&bid=44...."这样的地址??
    PHP_SELF只得到down.php啊
      

  8.   

    this.location = 'redir.php?url=' + this.location.href;这样可以得到包括参数在内的所有信息。试试吧。