当然是test.html啊~stat.php不是从test.html转跳来的吗~那他上层链接当然是test.html啊

解决方案 »

  1.   

    但我本意是要得到link.html的URL啊,这该怎么做啊???test.html是我服务器上的主页面,如果在统计程序中得到我自己页面的URL,那还有什么意义,我是想知道,别人是通过哪个链接到我页面上来的,这该怎么做啊?
      

  2.   

    请在test.html中直接添加
    <?php
    $myREFERER = $_SERVER["HTTP_REFERER"]
    ?>
    的话就能得到link.html这个页面。如果在stat.php中添加的话,得到的肯定是test.html
      

  3.   

    stat.php如何才能得到link.html的URL?
      

  4.   

    严重关注啊,我也在网上反复找了很久,能找到的都是用 js写出参数传递给stat.php的,就真的没有别的方案了吗????
      

  5.   

    手册上说了$_SERVER["HTTP_REFERER"] 不准确 很多时候得不到想要的值
      

  6.   

    顶一下,大家来讨论一下 Yahoo的统计,是如何通过一个图片得到访客来源这些信息的!
    期待高人出手。
      

  7.   

    改了一下方式。
    在A网站页面放置一段统计代码如下: 
    <script src="http://XXX.XXXX.XX.XX/stat.php?fro="+document.referrer> 
    B网站上放置stat.php统计程序 
    本意希望实现,当用户从C网站点击到A网站的链接,来到A网站,B网站的统计程序能得到A网站的用户来路,即C网站链接到A的链接地址。 
    要求,1、当用户通过C网站到达A网站,不能因调用B网站统计程序而引起页面跳转。 
    2、当用户通过C网站到达A网站,不能因调用B网站统计程序而引起页面刷新。 
    3、B网站能得到A网站的用户来路。 
    实现应用中发现,document.referrer所得到的变量值无法传给B的stat.php,stat.php中得到的是document.referrer字符串,而不是document.referrer所包含的C到A的链接地址。 
    怎么做才能将document.referrer中的值传给stat.php??? 
    我用过form自动提交方式,会产生页面跳转;采用过document.url语句,也会产生页面跳转,都不合适。 
      

  8.   

    test页面:
    <?php
    if(empty($_SERVER["HTTP_REFERER"])) $_SERVER["HTTP_REFERER"]="";
    $form = urlencode($_SERVER["HTTP_REFERER"]);
    ?>
    <iframe frameborder=0 width=100% src="start.php?form=<?=$form;?>"></iframe>
    start页面:<?php
    echo urldecode($_GET["form"]);
    ?>
      

  9.   

    这个动静太大了啊,既然能在test随便写这些,那这个讨论还有个屁意义啊,直接在test页里面得到$_SERVER["HTTP_REFERER"],随便传值就行了要讨论的是,不修改test的前提下,如何通过增加一个html的插入语句,来得到来源
      

  10.   

    $_SERVER["HTTP_REFERER"]
    不可靠
      

  11.   

    test.html不是php,$_SERVER["HTTP_REFERER"]算谁生的呢
      

  12.   

    支持楼上的,在test里面插代码简直是笨的笨不能再笨了,呵呵继续顶,等待答案
      

  13.   

    有人推荐下面方法,
    A站: 
    <script src="http://XXX.XXXX.XX.XX/count.js"> 
    B网: 
    count.js 
    ---------------------- 
    var fromurl=""; 
    try {fromurl=top.document.referrer;} catch(err) {fromurl="";} finally {fromurl=(fromurl=="")?document.referrer:fromurl;} 
    fromurl=escape(fromurl); document.write(" <img src=http://XXX.XXXX.XX.XX/stat.php?fro="+fromurl+">");
    但试了一下,好象<img src这一句并没有将fromurl传给统计程序stat.php,只是显示了一个打红叉的图标。这里问题是,<img src是否能传送变量值?为什么这里没有将fromurl传给stat.php?
      

  14.   

    楼上的兄弟,说实在的,你的问题其实也不是问题:(
    如果 test页面允许插入js,那你随便找个开源的代码拆开来看看就是了,一般的写法是:
    count.js :
    var ref = escape(document.referrer);
    document.write('<script src=http://www.domon.com/index.php?ref='+ref></script>');然后你在index.php接收就行了,明白吗?
    难得是不插入js,而是像yahoo统计那样,插入一个 <img 图片,如何实现统计来源啊???继续强势顶顶顶~~!期待奇迹出现
      

  15.   

    to Dereky:
    你说的count.js : 
    var ref = escape(document.referrer); 
    document.write(' <script src=http://www.domon.com/index.php?ref='+ref> </script>'); 这种方式我试过,只会在test.html页面上显示打红叉的图标,变量值ref根本就没有传到index.php中去,是否 <img src=语句是不能传送变量值的?还是打叉的图标表示这句根本就没执行到index.php程序中去?如果这个问题能够解决,那么你说的像yahoo统计那样,插入一个 <img 图片,也就同样可以解决了?只要在被test.html页面调用的js中,输出 
    var ref = escape(document.referrer); 
    document.write(' <script src=http://www.domon.com/index.php?ref='+ref> </script>');这个语句到test 页面上就行了。
      

  16.   

    彻底昏倒~~兄弟,两码事情唉
    用 <script 插入的脚本是可以执行的  我在问的问题在于 <img这样方式插入的脚本不能执行。你说的红叉叉 是你的index.php 脚本造成的,你要干什么?是要输出一个统计图片还是要干嘛??<script 统计器的代码 满世界都是啊要输出图片:
    var ref = escape(document.referrer);
    var count = 'http://www.test.com/count.php' 
       + "&r=" + __cc_ref
       + "&z=" + (new Date()).getTimezoneOffset()/60;
       
    document.write('<a href="http://www.test.com/" target="_blank">'
    + '<img src="'+count+'" width=15 height=15 border=0>'
    + '</a>');
    然后在count.php里面$_GET 所有参数,然后写库或者写文本,然后输出http头,然后输出一个图片。这样如果不行,你就砸了你的电脑算了呵呵
      

  17.   

    to Dereky: 
    你没明白我的意思,用下面语句
    var ref = escape(document.referrer); 
    document.write(' <script src=http://www.domon.com/index.php?ref='+ref> </script>');
    主要是为了在页面不跳转的情况下,用户不知情的情况下(如果有图片输出,用户就知道了),将ref变量值传递到index.php中,而不是想输出一张图片。我在index.php中,
    <php?
    echo "document.write($_GET[ref]);
    ?>
    却没有输出,说明ref变量值没有传到index.php中。我想问的是,到底能不能传送变量值,固定值是没有问题的,有没有哪位试过?
      

  18.   

    总结,经过与楼上各位的讨论,我已验证通过以下代码,作为此贴的总结,供后来者参考: 
    1、在A网站页面放置一段统计代码如下: 
    <script src="http://XXX.XXXX.XX.XX/stat.php?id=111> 取得被统计网站A的ID,ID是预先分配的。
    B网站上放置stat.php统计程序 
    代码为: 
    <?php 
    echo "var fromurl='';"; 
    echo "fromurl=top.document.referrer;"; (取得用户的来路地址) 
    echo "document.write(fromurl+' <br>');"; 
    echo "document.write(\" <iframe src='http://x.x.x.x/count.php?fro=\"+fromurl+\"' width='350' height='150'> </iframe>\");";  将包含有来路地址的变量fromurl传给统计程序count.php。 (如果width=0 height=0则不会将帧框架显示出来) 
    ?> 
    这样,就可以将fromurl变量内的值传送给count.php。在count.php中就可以取得来路地址了。